在Buster.js测试中导入其他.js文件

时间:2013-10-13 12:11:28

标签: javascript node.js import buster.js

我第一次尝试使用Buster.js进行Javascript测试

我按照the Buster site的说明运行“陈述显而易见的”测试。但是,我无法将任何现有的.js文件导入测试中。

例如,我有一个文件js/testLibrary.js,其中包含:

function addTwo(inp) {
  return inp+2;
}

和文件test/first-test.js,其中包含:

// Node.js tests
var buster = require("buster");
var testLibrary = require("../js/testLibrary.js");
var assert = buster.referee.assert;

buster.testCase("A module", {
    "Test The Library": function() {
            result = addTwo(3);
            console.log(result);
            assert(true, 'a message for you');
    }
});

正在运行buster-test

Error: A module Test The Library
    ReferenceError: addTwo is not defined
    [...]

result = addTwo(3);替换result = testLibrary.addTwo(3);给出:

Error: A module Test The Library
    TypeError: Object #<Object> has no method 'addTwo'
    [...]

我可能错过了一些非常基本的东西,但是目前,我完全难过了。有人能指出我正确的方向吗?

1 个答案:

答案 0 :(得分:2)

这是因为您没有从模块中导出此功能。 看一看: http://nodejs.org/api/modules.html#modules_module_exports