Тестировать Vanilla JS с помощью Jest довольно просто. В этом посте мы создадим несколько тестовых примеров с использованием jest для Vanilla JS.
Первый шаг - инициализировать и создать файл package.json с помощью npm init:
$ npm init
Npm init проведет вас и автоматически создаст файл package.json.
Следующим шагом будет установка jest
$ npm install --save-dev jest
После установки jest нам нужно изменить файл package.json и разместить собственный сценарий, который будет запускать набор тестов с использованием jest. Откройте файл package.json и добавьте
"scripts": { "test": "jest" }
Теперь вы можете проверить, все ли установлено правильно, с помощью команды
$ npm test
Если все было настроено правильно, должен получиться следующий результат.
Теперь давайте создадим образец класса с именем Person для тестирования.
// person.js class Person { constructor(firstName, lastName) { this.firstName = firstName this.lastName = lastName } fullName() { return this.firstName + ' ' + this.lastName } } module.exports = Person;
Затем давайте создадим тестовые файлы. Как вы можете видеть в командной строке выше, когда мы запускали npm jest, он проверял наличие тестовых файлов. В частности, он ищет формат файла с таким именем, как person.test.js. Итак, давайте создадим тестовый файл
// person.test.js const Person = require('./person'); test('Person constructs with a first and last name', () => { let testPerson = new Person('John', 'Doe') expect(testPerson).toEqual({firstName: 'John', lastName: 'Doe'}); }); test('fullName returns Person instance full name', () => { let testPerson = new Person('John', 'Doe') expect(testPerson.fullName()).toBe('John Doe'); });
Анализируя тестовый файл, сначала импортируется класс Person, который изначально был экспортирован из файла person.js. Далее мы создаем тестовые примеры. Полную документацию по тестовым случаям можно найти ниже:
Наконец, давайте протестируем наш файл и убедимся, что все работает правильно, запустив npm test.