James Bender

Yes, You Need to Unit Test your JavaScript. Here's How.

Stop the slow slog to the end. Learn how TDD creates a safety net, letting you build and refactor with confidence.

Yes, You Need to Unit Test your JavaScript. Here's How.
#1about 7 minutes

Why developers avoid unit testing JavaScript

Common excuses for not unit testing are addressed by framing tests as a long-term investment that prevents project slowdowns.

#2about 5 minutes

Understanding the Test-Driven Development workflow

TDD inverts the traditional development process by using specifications to write automated tests before writing the implementation code.

#3about 7 minutes

The core characteristics of a good unit test

Effective unit tests are isolated from dependencies, targeted to a single scenario, and repeatable regardless of external factors.

#4about 5 minutes

Applying the red-green-refactor TDD cycle

The core TDD loop involves writing a failing test (red), writing minimal code to pass it (green), and then improving the code's design (refactor).

#5about 2 minutes

Choosing a JavaScript testing framework: Jest vs Jasmine

Jest is recommended over Jasmine primarily for its performance benefits, as it runs tests in a multi-threaded environment.

#6about 8 minutes

Writing your first basic unit test with Jest

A live coding demonstration introduces the basic Jest syntax, including the `test`, `expect`, and `toBe` functions for a simple sum operation.

#7about 14 minutes

Live coding a Tic-Tac-Toe game using TDD

This demonstration builds a simple game engine by following the red-green-refactor cycle and using BDD-style tests with `describe` and `it`.

#8about 2 minutes

Practical next steps for adopting unit testing

Actionable advice for teams includes starting with new features, practicing daily, sharing knowledge, and measuring code coverage.

#9about 9 minutes

Audience Q&A on testing strategies

Questions from the audience are answered, covering topics like integration testing in React, handling front-end tests, and involving product teams.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

Related Articles

View all articles
DC
Daniel Cranney
Exploring TypeScript: Benefits for Large-Scale JavaScript Projects
JavaScript is the backbone of web development, powering everything from small websites to large-scale enterprise applications. However, as projects grow in complexity, maintaining JavaScript code can become increasingly difficult. This is where TypeS...
Exploring TypeScript: Benefits for Large-Scale JavaScript Projects
DC
Daniel Cranney
How to Avoid Over-Engineering
In today’s software development world, the demand for designing applications that are both robust and easy to maintain is more pressing than ever. Many developers encounter the architectural chaos left behind in older codebases, leading to frustratio...
How to Avoid Over-Engineering
BR
Benjamin Ruschin
What Developers Really Need to Create Great Code Demos
Every developer on earth has, at some point, had another developer to thank for a breakthrough, a success, an aha moment they wouldn’t have had without coming across that blog post, that open-source contribution, that reply on socials or that humble ...
What Developers Really Need to Create Great Code Demos

From learning to earning

Jobs that call for the skills explored in this talk.

Software Developer

Code Healers LLC
Hinesville, United States of America

Remote
25-35K
Intermediate
React
Python
JavaScript
+2
Software Engineer

Code Healers LLC
Hinesville, United States of America

Remote
40-50K
Intermediate
Senior
PHP
.NET
React
+2