Jest: Podstawowa konfiguracja

Opublikowano: 22.10.2022 - tagi: Jest JavaScript TypeScript Konfiguracja Testowanie

W tym wpisie podam jak skonfigurować Jest w dwóch wersjach: dla JavaScript i TypeScript.

Konfiguracja 1: JavaScript

Krok 1: Instalacja Jest

Wywołaj komendę:

npm install --save-dev jest

Krok 2: Dodaj plik konfiguracyjny

Stwórz plik o nazwie: jest.config.json i dodaj taką zawartość:

{
  "testRegex": "((\\.|/*.)(spec))\\.js?$"
}

Taka konfiguracja informuje Jest, że ma uruchamiać testy, które znajdują się w plikach z rozszerzeniem: .spec.js.

Konfiguracja 2: TypeScript

Krok 1: Instalacja Jest

npm i --save-dev ts-jest @types/jest

Krok 2: Dodaj plik konfiguracyjny

Stwórz plik o nazwie: jest.config.json i dodaj taką zawartość:

{
  "preset": "ts-jest",
  "testEnvironment": "node",
  "testRegex": "((\\.|/*.)(spec))\\.ts?$"
}

W wersji dla TypeScript, Jest będzie szukać plików z rozszerzeniem: .spec.ts.

Mamy skonfigurowane środowisko. Czas sprawdzić, czy to działa.

Uruchomienie testów

Konfiguracja w package.json

Dodajmy jeszcze takie wpisy do pliku package.json w sekcji: scripts:

{
  "scripts": {
    "test": "jest --config ./jest.config.json",
	"test:watch": "npm run test -- --watch"
  },
}

Pierwszy skrypt uruchomi nam raz testy, bazując na naszym pliku konfiguracyjnym. Drugi skrypt zrobi to samo, ale dodatkowo będzie nasłuchiwać na ewentualne zmiany.

Uruchomienie testu

Stwórz plik z rozszerzeniem: .spec.js lub .spec.ts i dodaj zawartość do pliku:

test('First test', () => {
    expect('Foo').toEqual('Foo');
});

Na koniec wywołaj jeden ze skryptów:

npm run test

lub:

npm run test:watch