| Тип | Фреймворк для автоматизованого тестування |
|---|---|
| Автор | John Resig та jQuery |
| Перший випуск | 2009 |
| Стабільний випуск | 1.20.0 (27 жовтня, 2015) |
| Операційна система | кросплатформність |
| Мова програмування | JavaScript |
| Ліцензія | MIT |
| Репозиторій | github.com/qunitjs/qunit |
| Вебсайт | qunitjs.com |
QUnit — це фреймворк для тестування коду мовою JavaScript. Активно використовується компанією jQuery Project для тестування jQuery, jQuery UI та jQuery Mobile, але також підходить для тестування будь-якого коду, написаного мовою JavaScript. Підтримує серверні (наприклад, node.js), а також клієнтські оточення.
Підхід до роботи в QUnit слідує специфікації тестування в CommonJS, який в свою чергу оновлюється під впливом QUnit.
Історія
QUnit було створено Джоном Резіґом (John Resig) як частину jQuery. У 2008-му його було виділено в окремий проект, який назвали «QUnit». Це дозволило будь-яким програмістам писати свої модулі для модульного тестування. Якщо перша версія QUnit використовувала jQuery для взаємодії з DOM, то нова версія, переписана у 2009 році, зробила QUnit повністю незалежним проектом.
Приклади
QUnit.module(string)— визначає модуль, що групує один чи кілька тестів.QUnit.test(string, function)— визначає тест.
QUnit використовує метод припущень, щоб проводити юніт-тести:[1]
assert.ok(boolean, string)— визначає, чи приведена змінна приводиться до логічного типу даних;assert.equal(value1, value2, message)— порівнює дві змінних, використовуючи оператор подвійної рівності;assert.deepEqual(value1, value2, message)— порівнює дві змінних, виходячи з їх змісту, а не тільки за їх ідентичністю;assert.strictEqual(value1, value2, message)— проводить суворе порівняння двох змінних за допомогою потрійної рівності (тобто порівнюючи не тільки значення, а й тип змінних).
Нижче наведено базовий приклад тестування:[2]
QUnit.test('a basic test example', function (assert) {
var obj = {};
assert.ok(true, 'Boolean true'); // проходить
assert.ok(1, 'Number one'); // проходить
assert.ok(false, 'Boolean false'); // не проходить
obj.start = 'Hello';
obj.end = 'Ciao';
assert.equal(obj.start, 'Hello', 'Opening greet'); // проходить
assert.equal(obj.end, 'Goodbye', 'Closing greet'); // не проходить
});
Примітки
- ↑ Assert methods. QUnit API Documentation. Архів оригіналу за 28 травня 2014. Процитовано 2 червня 2014.
- ↑ Cookbook: Example test. QUnit API Documentation. Архів оригіналу за 5 квітня 2016. Процитовано 2 червня 2014.
Посилання
- qunitjs.com — офіційний сайт [Архівовано 1 квітня 2016 у Wayback Machine.]
- Репозиторій QUnit на GitHub [Архівовано 23 березня 2016 у Wayback Machine.]








