QUnit — Вікіпедія

QUnit
Тип Фреймворк для автоматизованого тестування
Автор John Resig та jQuery
Перший випуск 2009
Стабільний випуск 1.20.0 (27 жовтня, 2015; 8 років тому (2015-10-27))
Операційна система кросплатформова програма
Мова програмування 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'); // не проходить }); 

Примітки[ред. | ред. код]

  1. Assert methods. QUnit API Documentation. Архів оригіналу за 28 травня 2014. Процитовано 2 червня 2014.
  2. Cookbook: Example test. QUnit API Documentation. Архів оригіналу за 5 квітня 2016. Процитовано 2 червня 2014.

Посилання[ред. | ред. код]