QUnit - 回调
当将 QUnit 集成到其他工具(如 CI 服务器)时,这些回调可用作读取测试结果的 API。以下是 QUnit 回调 API 方法的执行过程,并附有示例。
<html> <head> <meta charset = "utf-8"> <title>QUnit basic example</title> <link rel = "stylesheet" href = "https://code.jquery.com/qunit/qunit-1.22.0.css"> <script src = "https://code.jquery.com/qunit/qunit-1.22.0.js"></script> </head> <body> <div id = "qunit"></div> <div id = "qunit-fixture"></div> <script> //注册一个回调,每当测试套件启动时触发。 QUnit.begin(function( details ) { var data = document.getElementById("console").innerHTML; document.getElementById("console").innerHTML = "<br/>" + "QUnit.begin- Test Suite Begins " + "<br/>" + "Total Test: " + details.totalTests; }); //注册一个回调,当测试套件结束时触发。 QUnit.done(function( details ) { var data = document.getElementById("console").innerHTML; document.getElementById("console").innerHTML = data + "<br/><br/>" + "QUnit.done - Test Suite Finised" + "<br/>" + "Total: " + details.total + " Failed: " + details.failed + " Passed: " + details.passed; }); //注册一个回调,每当模块启动时触发。 QUnit.moduleStart(function( details ) { var data = document.getElementById("console").innerHTML; document.getElementById("console").innerHTML = data + "<br/><br/>" + "QUnit.moduleStart - Module Begins " + "<br/>" + details.name; }); //注册一个回调,当模块结束时触发。 QUnit.moduleDone(function( details ) { var data = document.getElementById("console").innerHTML; document.getElementById("console").innerHTML = data + "<br/><br/>" + "QUnit.moduleDone - Module Finished " + "<br/>" + details.name + " Failed/total: " + details.failed +"/" + details.total ; }); //注册一个回调,每当测试开始时就会触发。 QUnit.testStart(function( details ) { var data = document.getElementById("console").innerHTML; document.getElementById("console").innerHTML = data + "<br/><br/>" + "QUnit.testStart - Test Begins " + "<br/>" + details.module +" " + details.name; }); //注册一个回调,当测试结束时触发。 QUnit.testDone(function( details ) { var data = document.getElementById("console").innerHTML; document.getElementById("console").innerHTML = data + "<br/><br/>" + "QUnit.testDone - Test Finished " + "<br/>" + details.module +" " + details.name + "Failed/total: " + details.failed +" " + details.total+ " "+ details.duration; }); QUnit.module( "Module A", { beforeEach: function( assert ) { assert.ok( true, "before test case" ); }, 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.test( "test case 2", function( assert ) { assert.ok( true, "Module A: in test case 2" ); }); QUnit.module( "Module B" ); QUnit.test( "test case 1", function( assert ) { assert.ok( true, "Module B: in test case 1" ); }); QUnit.test( "test case 2", function( assert ) { assert.ok( true, "Module B: in test case 2" ); }); </script> <div id = "console" ></div> </body> </html>
验证输出
您应该看到以下结果 −