当busterJS说Node中的TestHelpers需要时,这是什么意思?

时间:2012-10-01 22:39:40

标签: node.js buster.js

从文档(Emphasiss Mine)

  

要在浏览器中的脚本标记中加载的库文件。 此设置   通常不应该用于节点运行。如果是,文件将是   require'd值是文件名和/或glob模式的数组。档   按提供的顺序加载。它可能包括重复,例如   [" test / lib / core.js"," test / lib / * / .js"],只会加载文件   一旦。 testHelpers在库和源之后加载,但之前加载   测试

这究竟是什么意思?当他们得到require'd时,他们会被包括在内?在什么变量名下?我有一些全局方法(testSetUptestTearDown)我喜欢在测试之间重用。据此,我只能在浏览器中进行测试时使用这些方法,而不是在我在Node中进行测试时。

这是我的配置文件:

var config = module.exports;

config['Browser Tests'] = {
    rootPath: '../',
    environment: 'browser',
    sources: [
        'src/*.js'
    ],
    deps: [
        'submodules/d3/d3.v2.min.js'
    ],
    testHelpers: [
        'test/helpers/*.js'
    ],
    tests: [
        'test/test_*.js'
    ]
};

config["Node tests"] = {
    rootPath: '../',
    environment: "node",
    tests: [
        'test/test_*.js'
    ]
};

1 个答案:

答案 0 :(得分:2)

文档告诉您的是文件将是必需的,但它们的导出将会丢失。因此,除非您的助手修改全局对象,否则这在节点上没有用。

但是,您可以将共享帮助程序放在单独的文件中,并且需要自己。