【问题标题】:Testing client-side JavaScript using jasmine-node and jquery-jasmine使用 jasmine-node 和 jquery-jasmine 测试客户端 JavaScript
【发布时间】:2013-01-02 18:21:42
【问题描述】:

我正在尝试使用 jasmine-nodejquery-jasmine 编写一些 JavaScript 单元测试,但遇到了配置问题。目前,这是我尝试运行的唯一“测试”:

describe("A suite", function() {
    it("contains spec with an expectation", function() {
        loadFixtures('blah.html');
        expect(true).toBe(true);
    });
});

我在尝试运行测试时收到以下错误:

    Failures:

      1) A suite contains spec with an expectation
       Message:
         ReferenceError: loadFixtures is not defined
       Stacktrace:
         ReferenceError: loadFixtures is not defined
        at [object Object].<anonymous> (/home/chris/Source/www/projects/wash/spec/javascripts/blah.spec.js:6:9)
        at [object Object].execute (/usr/local/lib/node_modules/jasmine-node/lib/jasmine-node/jasmine-2.0.0.rc1.js:1001:15)
        at [object Object].next_ (/usr/local/lib/node_modules/jasmine-node/lib/jasmine-node/jasmine-2.0.0.rc1.js:1790:31)
        at [object Object].start (/usr/local/lib/node_modules/jasmine-node/lib/jasmine-node/jasmine-2.0.0.rc1.js:1743:8)
        at [object Object].execute (/usr/local/lib/node_modules/jasmine-node/lib/jasmine-node/jasmine-2.0.0.rc1.js:2070:14)
        at [object Object].next_ (/usr/local/lib/node_modules/jasmine-node/lib/jasmine-node/jasmine-2.0.0.rc1.js:1790:31)
        at [object Object].start (/usr/local/lib/node_modules/jasmine-node/lib/jasmine-node/jasmine-2.0.0.rc1.js:1743:8)
        at [object Object].execute (/usr/local/lib/node_modules/jasmine-node/lib/jasmine-node/jasmine-2.0.0.rc1.js:2215:14)
        at [object Object].next_ (/usr/local/lib/node_modules/jasmine-node/lib/jasmine-node/jasmine-2.0.0.rc1.js:1790:31)
        at [object Object].start (/usr/local/lib/node_modules/jasmine-node/lib/jasmine-node/jasmine-2.0.0.rc1.js:1743:8)

Finished in 0.006 seconds
1 test, 1 assertion, 1 failure

当我在测试中注释掉loadFixtures 行时,它工作正常。

我认为jasmine-jquery 没有正确加载,但我不确定该怎么做。 (我对nodejsnpm 的经验很少。)

如果它具有诊断价值,当我运行 which jasmine-node(在 bash 内)时,我会得到一个结果,但是当我运行 which jasmine-jquery 时,我没有。我认为这是因为前者是可执行的,而后者不是,但我不想做任何假设。 (npm show 表示两个软件包都已安装。)

我做错了什么?

非常感谢您的帮助。

【问题讨论】:

    标签: node.js testing bdd jasmine-jquery jasmine-node


    【解决方案1】:

    您可能只需要在使用它之前要求它;-)

    var $ = require("jasmine-jquery");
    describe("A suite", function() { ...
    

    【讨论】:

      猜你喜欢
      • 2011-09-04
      • 1970-01-01
      • 1970-01-01
      • 2011-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-16
      相关资源
      最近更新 更多