即使使用 chaijs 断言失败,如何 运行 测试用例
How to run the test case even if assertion fails using chaijs
我只是想知道如何使用 mocha & chai js 运行 即使断言在测试脚本中失败的测试用例。
var arr = ["2017-05-04","04-05-2017","05-2017-04"];
function isDate(date) {
var regEx = /^\d{4}-\d{2}-\d{2}$/;
return date.match(regEx) != null;
}
for(var i=0;i<arr.length;i++){
assert.strictEqual(isDate(arr[i]), true);
}
我希望即使任何断言失败也能执行测试用例。
当测试中的断言失败时,将抛出异常,抛出异常后无法继续执行相同的测试。
你可以在你的案例中做的是让你的每个测试处理你的数组中的一个案例。这样,每个案例都作为单独的测试处理,一个测试的失败不会影响其他测试。例如:
var chai = require("chai");
var assert = chai.assert;
var arr = ["2017-05-04","04-05-2017","05-2017-04"];
function isDate(date) {
var regEx = /^\d{4}-\d{2}-\d{2}$/;
return date.match(regEx) != null;
}
describe("date tests", function () {
function makeTest(testCase) {
it(testCase, function () {
assert.strictEqual(isDate(testCase), true);
});
}
for(var i=0;i<arr.length;i++){
makeTest(arr[i]);
}
});
我只是想知道如何使用 mocha & chai js 运行 即使断言在测试脚本中失败的测试用例。
var arr = ["2017-05-04","04-05-2017","05-2017-04"];
function isDate(date) {
var regEx = /^\d{4}-\d{2}-\d{2}$/;
return date.match(regEx) != null;
}
for(var i=0;i<arr.length;i++){
assert.strictEqual(isDate(arr[i]), true);
}
我希望即使任何断言失败也能执行测试用例。
当测试中的断言失败时,将抛出异常,抛出异常后无法继续执行相同的测试。
你可以在你的案例中做的是让你的每个测试处理你的数组中的一个案例。这样,每个案例都作为单独的测试处理,一个测试的失败不会影响其他测试。例如:
var chai = require("chai");
var assert = chai.assert;
var arr = ["2017-05-04","04-05-2017","05-2017-04"];
function isDate(date) {
var regEx = /^\d{4}-\d{2}-\d{2}$/;
return date.match(regEx) != null;
}
describe("date tests", function () {
function makeTest(testCase) {
it(testCase, function () {
assert.strictEqual(isDate(testCase), true);
});
}
for(var i=0;i<arr.length;i++){
makeTest(arr[i]);
}
});