我知道 before
、beforeEach
、after
和 afterEach
但我如何在 ALL 之前运行一些代码测试。
换句话说,我是这样归档的
test
test1.js
test2.js
test3.js
我用
运行测试mocha --recursive
我不想在每个测试文件中都添加一个before
。我需要一个 beforeAllTests
或一个 --init=setup.js
或我可以在执行任何测试之前执行一些 JavaScript 的东西。在这种特殊情况下,我必须在测试运行之前配置系统的日志记录模块
有没有办法调用一些在所有测试之前执行的初始化函数?
最佳答案
如果只需要初始化代码,那么 mocha -r ./init
可能就足够了。甚至将它放入 test/mocha.opts
--require ./test/init
--ui tdd
但是如果需要拆机 Action ,就进退两难了,例如:
var app = require('../app.js');
app.listen(process.env.WEB_PORT);
after(function(done) {
var db = mongoskin.db(process.env.DB_URL, {safe:true});
db.dropDatabase(function(err) {
expect(err).to.not.be.ok();
db.close(done);
});
});
你会得到错误:
ReferenceError: 未定义之后
我猜 mocha 在处理“--require”时还没有自己初始化。
关于javascript - 如何使用 mocha 运行一些初始化代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25714193/