Mocha — это популярный фреймворк для тестирования JavaScript кода, который предоставляет простой, но мощный интерфейс для написания и выполнения тестов. Он используется в основном для модульных тестов, но подходит и для функциональных тестов. В этом разделе рассмотрим, как написать первый простой тест с использованием Mocha.
Для начала необходимо установить Mocha. Это можно сделать с помощью менеджера пакетов npm. Выполните следующую команду в вашем проекте:
npm install --save-dev mocha
Эта команда установит Mocha как зависимость для разработки. После установки Mocha можно запускать через командную строку, указывая, какие тесты нужно выполнить.
Mocha предоставляет несколько ключевых функций для организации тестов:
Тесты пишутся в виде JavaScript функций, которые выполняются Mocha в процессе тестирования.
Предположим, необходимо протестировать простую функцию, которая возвращает сумму двух чисел. Начнем с создания файла с функцией, которую будем тестировать.
Создадим файл sum.js:
function sum(a, b) {
return a + b;
}
module.exports = sum;
Теперь создадим тест для этой функции. Для этого создадим файл
test/sum.test.js:
const assert = require('assert');
const sum = require('../sum');
describe('Функция sum', function () {
it('должна правильно складывать два числа', function () {
assert.strictEqual(sum(2, 3), 5);
});
it('должна правильно складывать отрицательные числа', function () {
assert.strictEqual(sum(-2, -3), -5);
});
it('должна возвращать правильный результат при сложении с нулем', function () {
assert.strictEqual(sum(2, 0), 2);
});
});
describe — группа тестов, которые проверяют
поведение функции sum. Этот блок позволяет логически
сгруппировать тесты, чтобы код был более организованным.
it — описывает один тестовый случай. В каждом таком блоке мы пишем конкретное условие, которое хотим проверить. Например, в первом тесте мы проверяем, что результат сложения 2 и 3 будет равен 5.
assert — используется для проверки,
соответствует ли результат ожиданиям. В данном случае используется метод
strictEqual, который сравнивает два значения и выбрасывает
ошибку, если они не равны.
Для выполнения тестов нужно запустить Mocha в командной строке:
npx mocha test/sum.test.js
Если тесты написаны корректно, Mocha выведет информацию о прохождении тестов:
Функция sum
✓ должна правильно складывать два числа
✓ должна правильно складывать отрицательные числа
✓ должна возвращать правильный результат при сложении с нулем
3 passing (10ms)
Для организации тестов принято использовать следующую структуру файлов:
/project
/node_modules
/src
sum.js
/test
sum.test.js
package.json
assert, expect, should. В примере
использована стандартная библиотека assert, которая входит
в Node.js.done или
промисы.В этом примере показано, как установить Mocha, написать простой тест для функции сложения чисел и запустить тесты. Mocha предоставляет мощный и гибкий инструментарий для написания тестов в JavaScript. Создание тестов с помощью Mocha — это эффективный способ убедиться в корректности работы кода и избежать ошибок в будущем.