Setting up unit tests in Angular with Jest
By default, a new Angular project comes bundled with a lot of goodness, including the configuration and tooling in which to run unit tests with Karma and Jasmine. While working with Karma is relatively convenient, many developers find that in large-scale projects, the whole testing process becomes much slower if there are a lot of tests involved. This is mainly because you can’t run tests in parallel. In this recipe, we’ll set up Jest for unit testing in an Angular app. Additionally, we’ll migrate existing tests from the Karma syntax to the Jest syntax.
Starting with v16, Angular comes with a developer preview for Jest, and the process has become much easier. This recipe targets apps up to Angular v15 and covers what we can do in v16 at the end of the chapter.
Getting ready
The app that we are going to work with now resides in start/apps/chapter10/ng-jest-setup
inside the cloned repository: