Jump to content
Wikipedia The Free Encyclopedia

QUnit

From Wikipedia, the free encyclopedia
JavaScript unit testing framework
Not to be confused with Quantum units (QuNit).
This article relies largely or entirely on a single source . Relevant discussion may be found on the talk page. Please help improve this article by introducing citations to additional sources.
Find sources: "QUnit" – news · newspapers · books · scholar · JSTOR
(February 2015)
This article relies excessively on references to primary sources . Please improve this article by adding secondary or tertiary sources.
Find sources: "QUnit" – news · newspapers · books · scholar · JSTOR
(February 2015) (Learn how and when to remove this message)
QUnit
Initial release8 May 2008 (2008年05月08日)
Stable release
2.24.1[1]  Edit this on Wikidata / 26 January 2025; 59 days ago (26 January 2025)
Repository
Written inJavaScript
Type Test automation framework
License MIT
Websitequnitjs.com

QUnit is a JavaScript framework for unit testing. Originally developed for testing jQuery, jQuery UI and jQuery Mobile, it is a generic framework for testing any JavaScript code. It supports 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

[edit ]

John Resig originally developed QUnit as part of jQuery. In 2008 it was extracted from the jQuery unit test code to form its project and became known as "QUnit". This allowed others to start using it for writing their unit tests. While the initial version of QUnit used jQuery for interaction with the DOM, a rewrite in 2009 made QUnit completely standalone.

A 2017 analysis of npm and GitHub code repositories showed QUnit was the third most prevalent framework, with half as much usage as the most popular framework, Mocha.[2]

Usage and examples

[edit ]
  • 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:[3]

  • 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:[4]

QUnit.test('a basic test example',function(assert){
varobj={};
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

[edit ]

References

[edit ]
  1. ^ "Release 2.24.1". 26 January 2025. Retrieved 26 January 2025.
  2. ^ Fard, Amin Milani; Mesbah, Ali (2017). JavaScript: The (Un)covered Parts (PDF). 10th IEEE International Conference on Software Testing, Verification and Validation (ICST 2017). Tokyo: IEEE.
  3. ^ "Assert methods". QUnit API Documentation. Retrieved 2018年02月14日.
  4. ^ "Cookbook: Example test". QUnit API Documentation. Retrieved 2014年06月02日.
[edit ]
Code analysis
Supersets
Transpilers
Concepts
Debuggers
Doc generators
Editors (comparison)
Engines
Frameworks
Related technologies
Package managers
Module bundlers
Server-side
Unit testing frameworks (list)
People

AltStyle によって変換されたページ (->オリジナル) /