The powerful, easy-to-use JavaScript testing framework.

Get Started View the Docs


Easy, zero configuration setup for any Node.js project and minimal configuration for Browser-based projects.


Tests can be run anywhere; Node, your browser, even inside a Web Worker. Test your code where it runs.


Flexible APIs for custom assertions, runners, and reporters mean you can extend QUnit to fit your needs.

A Quick Example

function add(a, b) {
  return a + b;

QUnit.module('add', hooks => {
  QUnit.test('two numbers', assert => {
    assert.equal(add(1, 2), 3);

Browser Result

CLI Result

TAP version 13
ok 1 add > two numbers
# pass 1
# skip 0
# todo 0
# fail 0

Current Release

v2.20.0 (changelog)

These are the officially supported release channels for QUnit:

Join the Community

Join us on Mastodon, Twitter, or Gitter chat.

To contribute:

What are you waiting for? Get started!