Знание того, какая часть вашего кода покрыта тестами, необходимо для создания хорошо поддерживаемого веб-сайта, и одним из моих любимых инструментов для этого является Jest. Jest совместим со многими фреймворками Javascript, но здесь я использую ванильный Javascript. В этом уроке я покажу вам, как установить Jest, написать тест и протестировать покрытие кода.

Установка Jest

Перед установкой Jest запустите $ npm init в своем терминале и выполните все подсказки. Это создаст файл package.json для добавления тестовых сценариев.

Чтобы установить Jest, выполните в терминале следующее:

$ npm install --save-dev jest

Далее мы добавим наш тестовый скрипт в файл package.json:

Теперь просто используйте $ npm run test для запуска тестов.

Написание теста

Я создал простую функцию для тестирования — она возвращает персонализированное приветствие.

Обратите внимание на последнюю строку, в которой мы экспортируем функцию. Это необходимо для запуска нашего теста. Далее мы можем создать наш тестовый файл.

Здесь нужно отметить несколько важных моментов. Во-первых, имя файла — «sayHello.test.js». Я назвал его так, потому что файл, который мы тестируем, называется «sayHello.js». Во-вторых, мы импортируем функцию sayHello как константу вверху файла.

Чтобы узнать о конкретном синтаксисе Jest, ознакомьтесь с этой шпаргалка по Jest. В нем приведены примеры многих различных типов тестов, которые вы можете запускать с помощью Jest.

Теперь, когда у нас есть тест, все, что нам нужно сделать, это запустить $ npm run test, и мы получим следующий вывод на наш терминал:

Здорово! Из этого мы можем сказать, что все наши тесты проходят успешно, но как узнать, какая часть нашего кода покрыта этими тестами?

Покрытие кода

Проверка покрытия кода на самом деле является самой простой частью этого руководства. Помните тестовый сценарий ранее? Все, что нам нужно сделать, это изменить его на следующее, чтобы вывести покрытие кода:

Единственная разница заключается в «— покрытии». Теперь мы получаем покрытие кода при запуске $ npm run test.

И это все, что нужно сделать. Теперь вы можете писать тесты с помощью Jest и убедиться, что все ваше приложение покрыто. Спасибо за чтение!