Jasmine — это среда тестирования JavaScript с открытым исходным кодом.
Он предназначен для работы на любой платформе с поддержкой JavaScript, не мешает работе приложения и IDE и имеет простой для чтения синтаксис.
На него сильно повлияли другие среды модульного тестирования, такие как ScrewUnit, JSSpec, JSpec и RSpec.
Создайте новую папку для проекта и перейдите в неё:
mkdir jasmine-example
cd jasmine-example
Инициализируйте проект npm:
npm init -y
Установите Jasmine:
npm install --save-dev jasmine
Инициализируйте Jasmine в проекте:
npx jasmine init
Эта команда создаст базовую конфигурацию Jasmine
, папку spec для тестов и файл jasmine.json
для настроек.
Создайте файл add.js
в корне проекта с простой функцией сложения:
// add.js
function add(a, b) {
return a + b;
}
module.exports = add;
Создайте папку spec
и файл теста add.spec.js
внутри неё:
mkdir spec
touch spec/add.spec.js
Добавьте в файл spec/add.spec.js
следующий код:
// spec/add.spec.js
const add = require('../add');
describe('Функция add', () => {
it('должна возвращать сумму двух чисел', () => {
expect(add(1, 2)).toBe(3);
expect(add(-1, -1)).toBe(-2);
expect(add(0, 0)).toBe(0);
expect(add(1, -1)).toBe(0);
});
});
Теперь вы можете запустить тесты с помощью команды:
npx jasmine
Jasmine выполнит тесты и выведет результаты в консоли.
Ваши тесты успешно прошли, и Jasmine сообщил, что:
- Выполнен 1 тест.
- Ошибок нет.
- Время выполнения тестов составило 0.01 секунды.
Это значит, что функция сложения работает корректно, и тесты настроены правильно.
Если вы хотите добавить больше тестов или функций для тестирования, вы можете просто расширить папку spec и добавлять новые тестовые файлы.
Также, если необходимо включить более сложные сценарии, вы можете настроить Jasmine с помощью файла jasmine.json или добавить другие тестовые фреймворки для совместного использования с Jasmine.
Ваш проект должен выглядеть следующим образом:
jasmine-example/
│
├── node_modules/ # Зависимости
├── add.js # Тестируемая функция
├── package.json # Файл конфигурации npm
├── spec/ # Папка для тестов
│ └── add.spec.js # Тесты для функции сложения
│
└── jasmine.json # Конфигурация Jasmine
Теперь у вас есть базовый проект с Jasmine, который можно расширять и использовать для тестирования других функций.
Преподаватель: Дуплей Максим Игоревич
Дата: 12.09.2024
Версия 1.0