QUnit Async Example
by HYEONGJINKIM
HTML
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/qunit/2.4.1/qunit.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/qunit/2.4.1/qunit.js"></script>
<div id="qunit"></div>
<div id="qunit-fixture"></div>
JavaScript
QUnit.module("Module A", {
before: function(assert) {
// prepare something once for all tests
assert.ok(true, "before test case");
var done = assert.async();
timeout(3000).then(function() {
console.log('before!');
done(); // tell QUnit you're good to go.
});
},
beforeEach: function(assert) {
//every test
assert.ok(true, "beforeEach test case");
var done = assert.async();
timeout(5000).then(function() {
console.log('beforeEach!');
done(); // tell QUnit you're good to go.
});
},
afterEach: function(assert) {
assert.ok(true, "after test case");
}
});
QUnit.test("test case 1", function(assert) {
assert.ok(true, "Module A: in test case 1");
});
QUnit.skip("test case 2", function(assert) {
assert.ok(true, "Module A: in test case 2");
});
QUnit.test("test case 3", function(assert) {
assert.ok(true, "Module A: in test case 1");
});
QUnit.module("Module B", function(hooks) {
hooks.before(function(assert) {
console.log("Before");
});
hooks.after(function(assert) {
console.log("After");
});
QUnit.test("Test A", function(assert) {
assert.expect(0);
console.log("Test A ran");
});
QUnit.test("Test B", function(assert) {
assert.expect(0);
console.log("Test B ran");
});
QUnit.test("Test C", function(assert) {
assert.expect(0);
console.log("Test C ran");
});
});
QUnit.module("Module C", {
before: function(assert) {
// prepare something once for all tests
assert.ok(true, "before test case");
var done = assert.async();
timeout(3000).then(done);
},
beforeEach: function(assert) {
//every test
assert.ok(true, "beforeEach test case");
timeout(5000).then(assert.async());
},
afterEach: function(assert) {
assert.ok(true, "after test case");
}
});
QUnit.test("test case 1", function(assert) {
assert.ok(true, "Module C: in test case 1");
});
QUnit.test("test case 2", function(assert) {
...