WebStorm与jsTestDriver没有找到jQuery

时间:2013-03-23 18:58:19

标签: javascript jquery webstorm js-test-driver

看到this question,但重命名为jQuery无济于事。

我正在尝试在Webstorm中进行一些基本的单元测试。即使没有测试,也没有找到其他文件中定义的内容。

我有这个配置文件:

server: http://localhost:9876

load:
  - libs/jquery-1.9.0.min.js
  - src/jquery.combine/jquery.combine.js

但运行测试时出现此错误:

error loading file: /test/src/jquery.combine/jquery.combine.js:2: Uncaught TypeError: Cannot set property 'union' of undefined

路径有点不同,但点击它会显示正确的文件。

jquery.combine.js看起来像这样:

(function($) {
  $.union = function () {
    // ...
  };
}(jQuery));

为什么不检测jQuery?它正确地包含它,因为如果我拼错了它抱怨丢失文件的路径。

1 个答案:

答案 0 :(得分:0)

我能够在JetBrains的帮助下解决这个问题。如果你为QUnit添加一个jsTestDriver适配器,它会以某种方式自行解决。 WebStorm捆绑了this one

我更新的jsTestDriver.conf如下所示:

load:
 - libs/qunit-jstd-adapter/equiv.js
 - libs/qunit-jstd-adapter/QUnitAdapter.js
 - libs/jquery/jquery.js
 - src/*.js

test:
 - test/*.js

我正在粘贴我从JetBrains获得的指示(稍作修改),这有助于我解决问题:

  

1)删除jquery.combine / libs / qunit / qunit.js - 这样做会使符号'test'和'module'得不到解决,

     

2)打开jquery.combine / test / difference.tests.js并将测试光标放在任何'test'函数调用上,稍等一下,你会看到这个建议:     “添加QUnit JsTestDriver适配器?Alt + Enter”     调用此快速修复程序将打开一个对话框,您应在其中指定将添加“QUnit JsTestDriver Adapter”文件的目录。

     

3)由于equiv.js和QUnitAdapter.js文件位于项目内,请将它们加载到jsTestDriver.conf中

     

4)现在右键单击jsTestDriver.conf并选择run(JsTestDriver服务器应该启动并具有捕获的浏览器)。