Javascript MochaJS:如何在全局mocha实例中调用规范级挂钩?
有没有办法在每个规范前后运行一个钩子? 例如,有3个Javascript MochaJS:如何在全局mocha实例中调用规范级挂钩?,javascript,testing,automation,mocha.js,hook,Javascript,Testing,Automation,Mocha.js,Hook,有没有办法在每个规范前后运行一个钩子? 例如,有3个*.spec.js文件,控制台标准输出应如下打印 (我知道这可以在单个规范本身的挂钩之前完成。但这意味着在所有规范文件中编写大量重复代码。) 有roothook,但它们在运行所有规范之前和之后打印。我的要求是在每个规范之前和之后打印(而不是在整个套件之前和之后) 规范开始于:12:00:00(我相信您可以使用 //test/timer-hooks.js 函数计时器(){ //获取时间并将其格式化为字符串 } exports.mochaHooks
*.spec.js
文件,控制台标准输出应如下打印
(我知道这可以在单个规范本身的挂钩之前完成。但这意味着在所有规范文件中编写大量重复代码。)
有roothook,但它们在运行所有规范之前和之后打印。我的要求是在每个规范之前和之后打印(而不是在整个套件之前和之后)
规范开始于:12:00:00(我相信您可以使用
//test/timer-hooks.js
函数计时器(){
//获取时间并将其格式化为字符串
}
exports.mochaHooks={
每次之前(完成){
log(`Spec起始于:${timer()}`);
完成();
},
每次之后(完成){
log(`Spec结束于:${timer()}`);
完成();
}
};
然后,在运行测试时,添加——require test/timer hooks.js
mocha——需要测试/timer-hooks.js
Spec started at : 12:00:00 (<-- called from global spec level beforeHook)
✓ Spec 1 tests
✓ ...
✓ ...
Spec Ended at : 12:00:10 (<-- called from global spec level afterHook)
Spec started at : 12:00:11 (<-- called from global spec level beforeHook)
✓ Spec 2 tests
✓ ...
✓ ...
Spec Ended at : 12:00:15 (<-- called from global spec level afterHook)
Spec started at : 12:00:15 (<-- called from global spec level beforeHook)
✓ Spec 3 tests
✓ ...
✓ ...
Spec Ended at : 12:00:20 (<-- called from global spec level afterHook)