0

来自文档(Emphasiss Mine)

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

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

这是我的配置文件:

var config = 模块.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'
    ]
};
4

1 回答 1

2

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

但是,您可以自由地将共享助手放在单独的文件中并要求自己。

于 2012-10-02T06:27:42.820 回答