Author: Jason Cheatham

Snapshot Testing

Snapshot Testing: Benefits and Drawbacks

Snapshot testing has become very popular for front end-development over the last few years. The term has almost become synonymous with Jest and React, but it can be used to test more than just components. This article provides a brief overview of what snapshot testing is, what it isn’t, and how it might be helpful for your project. What is Snapshot Testing? Snapshot testing is a type of “output comparison” or “golden master” testing. These tests prevent regressions by comparing

Read More »
The Definitive TypeScript Guide

The Definitive TypeScript Guide

Originally published Oct 29, 2018. Updated April 10, 2020. This article describes the features and functionality of TypeScript 3.8.  One of the most interesting languages for large-scale application development is Microsoft’s TypeScript. TypeScript is unique in that it is a superset of JavaScript, but with optional types, interfaces, generics, and more. Unlike other compile-to-JavaScript languages, TypeScript does not try to change JavaScript into a new language. Instead, the TypeScript team is careful to align the language’s extra features as closely as

Read More »
What Makes Intern Different

What Makes Intern Different

Intern has always taken a different path in the pursuit of flexible automated web app testing. In the early days, Intern leveraged AMD modules when most other testing frameworks were not modular or only supported CommonJS modules, allowing Intern to support modular code in any environment. Intern was also one of the first tools to leverage Istanbul to support code coverage analysis, and its flexible architecture supports integration into a variety of CI/CD environments. Intern was one of the first

Read More »
A Modern Terminal-Based Development Environment

A Modern Terminal-Based Development Environment

VS Code gets a lot of love today, and rightly so, but there’s still something to be said for a text-mode, fully keyboard-controlled development environment. With tools like zsh, tmux, tsserver, and Vim, you’ll find you rarely need to reach over to the rodent on your desk. In this article I’ll go over some tools that I find useful in my own terminal based environment. As such, this article will focus on Macs, although most of the tools discussed here

Read More »
Intern Recorder 2 now supports TypeScript, ES Modules, and Intern 4

Intern Recorder 2 now supports TypeScript, ES Modules, and Intern 4

Intern Recorder is a Chrome extension that can kickstart the process of creating functional tests for Intern. It was initially released in 2015 users of Intern authored test suites as AMD modules. Intern has changed quite a bit since then; in particular, the standard suite module format has changed from AMD modules to ES Modules and ES5 code has been replaced by ES2015+ and TypeScript. Intern Recorder was due for an update.

Read More »
Testing TypeScript with Intern 4

Testing TypeScript with Intern 4

Intern is a popular JavaScript testing framework with an extensive feature set. While Intern has traditionally been focused on testing applications written in standard JavaScript, it has also had great support for TypeScript. With version 4, Intern has been completely rewritten in TypeScript, allowing it to provide a more seamless testing experience for TypeScript projects.

Read More »
What is Intern 4?

What is Intern 4?

Intern is complete JavaScript test stack, with support for the entire testing lifecycle. Intern 4 keeps many of the internals of Intern 3, but updates the external interface and usage model to better fit into modern workflows. Why Intern Intern’s goal is to simplify the process of writing complete, high quality application test suites. Some of the key benefits of Intern include: Support for both unit and functional tests Built-in assertions (via Chai) Built-in code coverage (via Istanbul) A thoroughly

Read More »
Intern and JavaScript Testing in 2017

Intern and JavaScript Testing in 2017

Since we released Intern in 2013, the state of JavaScript testing has changed substantially. The JavaScript world was a very different place. Node.js was at version 0.8, and core modules like http were still being heavily developed! Popular tools like webpack, React, and TypeScript were still in the early stages of development. Jasmine was probably the most popular testing framework for JavaScript, although there were were several other tools in common use such as Mocha and QUnit. WebDriver testing with

Read More »
Intern

Moving 4-ward with Intern

The motivation for Intern 4 is to make it easier to author tests with ES6+ features within tests, with or without transpilation. Want to skim? Here’s the Intern Roadmap which lists our high level status for each Intern release going forward. Or if you’re curious to know the details for our plans for Intern this year, read on:

Read More »