将参数传递给Mocha

时间:2012-12-21 23:36:04

标签: javascript mocha

我按照此处所述以编程方式使用Mocha:

https://github.com/visionmedia/mocha/wiki/Using-mocha-programmatically

与编写示例的方式非常相似:

测试runner.js:

var Mocha = require('mocha');
var mocha = new Mocha();
mocha.addFile('spec.js');
mocha.run(function() {});

在测试规范中,我正在启动无头浏览器以在特定网址上运行测试:

spec.js:

var Browser = new Browser();
browser.visit(url, function(){});

有没有办法将所需的网址从test-runner.js传递到spec.js?

1 个答案:

答案 0 :(得分:5)

在spec文件中,您可以要求一个包含这些测试配置的模块:

var url = require('./config.js').url;
describe("blah", function(){
    ...
});

此配置模块也可以从最初的mocha测试中设置(例如):

var Mocha = require('mocha');
var mocha = new Mocha();

var config = require('./config.js');
config.setOptions({url:"localhost/testme.html"});

mocha.addFile('spec.js');
mocha.run(function() {});

查看有关作为单例的节点模块的this related SO