QUnit: A JavaScript Unit Testing framework.
What is QUnit?
QUnit is a powerful, easy-to-use JavaScript unit testing framework. It's used by the jQuery, jQuery UI and jQuery Mobile projects and is capable of testing any generic JavaScript code, including itself!
Getting Started
A minimal QUnit test setup:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
|
The contents of tests.js:
1
2
3
|
|
The result:
Browser Support
QUnit currently supports the same browsers as jQuery 3.x.
For legacy browser support, including Internet Explorer versions lower than IE9, please use the 1.x series of QUnit.
Node Support
QUnit follows the Node Long-term Support (LTS) Schedule. Support is provided for Current, Active, and Maintenance releases.
Download
QUnit is available from the jQuery CDN hosted by MaxCDN.
Current Release - v2.1.1
- qunit-2.1.1.js
- qunit-2.1.1.css
- Changelog
- NPM:
- Bower:
To test the latest features and bug fixes to QUnit, a version automatically generated from the latest commit to the QUnit Git repository is also available for use.
Learn More
- Check out the API documentation or the Cookbook to learn how to use QUnit
- To see more examples, check out the unit tests of jQuery, jQuery UI or the jQuery Validation Plugin.
- For custom assertions, reporters and themes, check out official and third-party plugins
- Please post to the QUnit and testing forum for anything related to QUnit or testing in general.
- For announcements, follow @qunitjs
Get Involved
- The code is located at: https://github.com/qunitjs/qunit
- The code for this site is also on GitHub, with the API pages in a separate repository.
- Find the QUnit team in #jquery-dev on Freenode.
History
QUnit was originally developed by John Resig as part of jQuery. In 2008 it got its own home, name and API documentation, allowing others to use it for their unit testing as well. At the time it still depended on jQuery. A rewrite in 2009 fixed that, and now QUnit runs completely standalone.
QUnit's assertion methods follow the CommonJS Unit Testing specification, which was to some degree influenced by QUnit.