[英]how to run some initialization code with mocha
我before
, beforeEach
, after
和after
afterEach
但是如何在所有測試之前運行一些代碼。
換句話說,我這樣的文件
test
test1.js
test2.js
test3.js
我用它來運行測試
mocha --recursive
我不想在每個測試文件中放一個before
。 我需要一個beforeAllTests
或--init=setup.js
或者我可以在執行任何測試之前執行一些JavaScript的東西。 在這種特殊情況下,我必須在測試運行之前配置我的系統的日志記錄模塊
有沒有辦法調用一些在所有測試之前執行的init函數?
如果只需要初始化代碼,那么mocha -r ./init
可能就足夠了。 甚至把它放入test/mocha.opts
--require ./test/init
--ui tdd
但是如果你需要拆卸行動,那就有兩難,例如:
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: after is not defined
我猜mocha在處理'--require'時還沒有初始化。
我最近在我們的節點應用程序中找到了它:
\n 測試\n ├──unit\n │├──test1\n │├──test2\n │└──......\n ├──integeration\n │├──test1\n │├──test2\n │└──......\n ├──bootstrap.js\n └──mocha.opts\n
完成。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.