我试图找到一种方法来检测文件是否从命令行实例化,或者是否在mocha单元测试中是必需的。通常用
来做到这一点if (require.main === module)
但我知道在使用Mocha时,require.module
在Mocha中有一些dir
,感谢this post。
为什么我需要它:我正在编写单元测试并希望选择
index.js
以下是我想要做的基本想法(代码中)。有人知道如何调整此代码以获得我需要的功能吗?
index.js:
'use strict';
var chai = require('chai');
var expect = chai.expect;
var displayErrors = require("./displayErrors");
describe("Running all tests now...", function () {
displayErrors();
});
displayErrors:
"use strict";
var displayErrors = require("../../bin/displayErrors");
function test () {
describe("Testing displayErrors.js now...", function () {
it("blah", function (done) {
displayErrors(function (status, statusText) {
expect(1).to.equal(1);
done();
});
});
it("blah", function (done) {
displayErrors(function (status, statusText) {
expect(1).to.equal(1);
done();
});
});
});
}
module.exports = test;
if (require.main === module) {
var chai = require('chai');
var expect = chai.expect;
test();
}
答案 0 :(得分:0)
在Mocha中,您不需要index.js。你可以这样做:
mocha // runs all tests
mocha -g blah // runs only tests with 'blah' in it or description