QUnit

Source: Wikipedia, the free encyclopedia.
QUnit
Initial release8 May 2008 (2008-05-08)
Stable release
2.20.1[1] Edit this on Wikidata / 15 February 2024; 55 days ago (15 February 2024)
Repository
Written in
MIT
Websitequnitjs.com

QUnit is a

client-side environments in web browsers, and server-side (e.g. Node.js
).

QUnit's assertion methods follow the CommonJS unit testing specification, which itself was influenced to some degree by QUnit.

History

unit tests. While the initial version of QUnit used jQuery for interaction with the DOM, a rewrite
in 2009 made QUnit completely standalone.

Usage and examples

  • QUnit.module(string) - Defines a module, a grouping of one or more tests.
  • QUnit.test(string, function) - Defines a test.

QUnit uses a set of assertion method to provide semantic meaning in unit tests:[2]

  • assert.ok(boolean, string) - Asserts that the provided value casts to boolean true.
  • assert.equal(value1, value2, message) - Compares two values, using the
    double-equal operator
    .
  • assert.deepEqual(value1, value2, message) - Compares two values based on their content, not just their identity.
  • assert.strictEqual(value1, value2, message) - Strictly compares two values, using the triple-equal operator.

A basic example would be as follows:[3]

QUnit.test('a basic test example', function (assert) {
  var obj = {};

  assert.ok(true, 'Boolean true');       // passes
  assert.ok(1, 'Number one');            // passes
  assert.ok(false, 'Boolean false');     // fails

  obj.start = 'Hello';
  obj.end = 'Ciao';
  assert.equal(obj.start, 'Hello', 'Opening greet'); // passes
  assert.equal(obj.end, 'Goodbye', 'Closing greet'); // fails
});

See also

References

  1. ^ "Release 2.20.1". 15 February 2024. Retrieved 20 February 2024.
  2. ^ "Assert methods". QUnit API Documentation. Retrieved 2018-02-14.
  3. ^ "Cookbook: Example test". QUnit API Documentation. Retrieved 2014-06-02.

External links

This page is based on the copyrighted Wikipedia article: QUnit. Articles is available under the CC BY-SA 3.0 license; additional terms may apply.Privacy Policy