Software Testing


Unit Testing for Typescript & NodeJs Developers with Jest

Master unit testing with NodeJs, Typescript, Jest and React. Write top quality Typescript and NodeJs software with Jest

4.45 (106 reviews)



4 hours


Feb 2021

Last Update
Regular Price

What you will learn

Deep understanding of unit testing

Write, run, debug complex test suites

Test basic React components

Mock and stub complex Typescript classes

Node testing using Jest


Write tests for error handling

Integration tests for Node apps

Jest - the basics

Jest - the advanced parts

Advanced unit testing techniques using Jest


A must have skill for senior developers

Typescript is getting more and more popularity and it is a required skill for many IT jobs. It's key feature is type safety, thus preventing bugs.

But yes another skill is very important for any programming job: unit testing. Combining these two techniques will result in solid, robust and bug free code.

This course will go beyond the basics of unit testing and teach you all you need to write real world, complex testing suites for NodeJs and Typescript applications using the most popular JavaScript testing library: Jest.

Using Jest as an unit testing library provides many advantages:

  • Unitary unit testing library for running and structuring tests

  • Extensive mocking, stubbing and spying capabilities

  • Powerful matchers to create simple to read tests

  • Jest ships as one unitary NPM package

  • Jest is the default choice for TypeScript React projects

Why unit testing NodeJs apps?

Unit testing usually adds a lot to a code base, two or tree times in some cases. This also means that a lot of time needs to be invested in writing and setting up tests. But all this effort pays of: time, effort and headache of fixing bugs can be used for more fun activities.

What you will get from this course:

  • setup NodeJs and Typescript projects from scratch

  • implement unit testing with Jest

  • learn about unit testing configuration with parameters like: roots, transform, testRegex or verbose

  • learn about Jest test suites structure: describe with value, test, descriptions, hooks like beforeEach

  • basic and advanced assertions, comparing primitive types, objects or even errors

  • instantiating test double objects like mocks, stubs, spies or fakes.

  • write complex mock objects which can be used with "strange" JavaScript libraries.

  • inject doubles: directly inside the constructor, over the module or even using the objects prototype

  • learn about deep mocks and matchers to make your tests even better

  • integration tests for a NodeJs server application

  • Conditionally and asynchronously skip tests

  • Introduction on testing React components written in Typescript using react-testing-library

  • React User interaction with fire event and custom events

  • Assert react component values after asynchronous operations

  • Use TypeScript and React for full-stack unit testing

The examples used in the course follow very high coding guidelines for Typescript, NodeJs and React. Async/await syntax is used for clear and concise code, and of course, you will see how to test asynchronous code, on server, but also in the front end.

Course advantages:

  • Respect for your time: most of the time of the instructor typing is cut off, the course is focused on unit tests and Jest explanations

  • Concise: learn only what you need, no fillers to make the course falsely more appealing

  • Experienced and programming active instructor: a great teacher never looses touch with the industry. This is especially true for software development, where the industry is so dynamic. This helps the instructor stay up to date with the best coding guidelines and present you the challenging parts, not the "hello world"

  • Organized course structure: six parts, progressive approach, consistent content

  • Code changes in each lecture on Git with code diffs: this will help you get an concise overview of the lecture and correct in case you missed something

  • Big font, dark background, fullHD content, this way it is readable even on a small screen or even tablet.

  • Lifetime access

  • Certificate of completion to present to your current or prospective employer

Do you want your Typescript or NodeJs code to have the best quality, and your project to be safe?

Enroll and start writing your tests in 10 minutes!


Unit Testing for Typescript & NodeJs Developers with Jest
Unit Testing for Typescript & NodeJs Developers with Jest
Unit Testing for Typescript & NodeJs Developers with Jest
Unit Testing for Typescript & NodeJs Developers with Jest


Getting started

How to take this course

Unit testing discussion

Tools instalation: TypeScript and NodeJs

Tools installation: Visual Studio Code

Unit tests introduction

Sectio intro

Project setup



Testing errors

Debug setup


Working with test doubles

Section intro

Test doubles discussion

Project presentation


Mocks introduction

Mock asertions

Mock return values

Mocking promise rejections

Mocking modules

Testing random

Advanced testing use-cases

Section intro

Testing callbacks

Testing launcher code

Testing Server code

Integration tests

Section intro

Integration tests discussion

Integration tests setup

DataBase integration tests

Conditional tests

Server Itests

Testing React apps

Section intro

Project setup

Simple app presentation

Testing visual elements

Testing user interaction

Testing async code

Debug and jest options

Project setup from scratch


Section intro

Testing frameworks comparison

Development environment

Closing words


Warren26 March 2021

I love the instructors ability to make Jest so approachable and I value his teaching style. No copy and paste here, just good-clear instruction.

Stephan12 March 2021

This was a really great course to learn the fundamentals of testing. There is a lot more to explore in these documents ,but the main takeaway. It doesn´t matter wich framework/s you use. After this course, you know how to test the right way. I really exited to write my own tests and see green success symbols :) Thank you a lot for this great course. This course is really worth to take. thank you to let us undertand how this works

Baldemar11 March 2021

Course is ok, there is a lot of unnecessary cuts that make it hard to follow along, and explanations are not very clear, but it does show some things about Jest.

Linzi26 January 2021

SLOW DOWN Take a breath, maybe repeat yourself a bit. Explain what you are doing. Stop copy and pasting. Luckily I am only taking this course to brush up my testing skills. I'm sure if I were a complete beginner I would be completely lost. I think there is some good content in here, but it's hard to tell.

Larry15 December 2020

Straightforward lessons, no filling material, and the instructor touches also some advanced typescript testing techniques. Very good for me.

And13 December 2020

It's a beginner course on unit testing. Don't think it's worth ~ $100. If you can get it at a good discount, then take it.

Petr12 December 2020

I've wanted to start writing tests, but all the tutorials i found online we're partial, used different tools (and versions), configs mismatched... This course covers testing from setup, to a bunch of common problems/scenarios. I'm now more oriented in the subject and can explore deeper functionalities as I need them The only thing I miss in this course is about testing react components and the shallow rendering / mocking dilemma...

Colin6 December 2020

Alex is a very good instructor. He explains everything well and at a good pace. The source project provided is thorough and provides great examples of different types of testing techniques and TypeScript patterns. There's also lots of great bits of information regarding VSCode as an IDE and debugging node effectively.

Cleaver23 November 2020

I got a lot out of the course. It provides a lot of what is missing from other JS courses—most of them deliberately ignore testing. I've found that testing skills are somewhat lacking in the industry. I'd recommend this course to anyone working with Node, or other JS technologies.


Udemy ID


Course created date


Course Indexed date
Course Submitted by