Plugins
Bundled Plugins
QUnit includes a few plugins in its repository. These add custom assertions, help with continous integration, and provide alternative themes.
- PhantomJS Runner - a runner for PhantomJS, providing console output for tests. If you're using grunt, use its qunit task instead.
- Themes - alternative themes, load their CSS file instead of the default one.
Official Plugins
QUnit also has a few official plugins in separate repositories. These run multiple test suites from one and help with continous integration.
- Composite - bundle multiple test suites into a single file, running them in an iframe
- JUnit Logger - produces JUnit-style XML output for test results, for integration into tools like Jenkins
Third-Party Plugins and Integrations
If you prefer BDD-style APIs for testing, check out SpecIt and Pavlov. For testing ajaxy code, check mockjax and sinon.js. That and more below.
- SpecIt A QUnit-based API for bdd-style testing
- Pavlov - extends QUnit with a rich, higher-level, Behavioral API
- Rails plugin for QUnit integration
- jQuery-Mockjax - Interface to mock ajax requests and responses
- Sinon.js integration with QUnit
- QUnit testrunner plugin for JsTestDriver
- Drupal module for QUnit
- QUnit CLIB - QUnit CLIB helps extend QUnit's CLI support to many common CLI environments.
- Parameterize - A QUnit plugin For Running Parameterized Tests
- HTML - A QUnit plugin for assertion methods to compare two HTML strings for equality after a rigorous normalization process.
- Step - A QUnit plugin for asserting the proper sequence in which the code should execute.
- Close - A QUnit plugin for asserting that a number is approximately equal (or not) to an expected number, within a given tolerance.
- Canvas - A QUnit plugin for asserting individual pixel values within a Canvas element.