问题标签 [js-test-driver]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1234 浏览

javascript - 为什么 jasmine 中不定义 false ?

我将jasmineJs-test-driver结合使用,并使用适配器将它们连接起来。

我有以下测试用例:

尽管第二个测试按预期成功,但第一个测试失败并出现以下错误:

未定义的错误 test.test 它应该返回定义的值失败(0,00 毫秒):AssertError:预期未定义要定义。

为什么false应该这样undefined

0 投票
1 回答
315 浏览

eclipse - 使用 Ctrl+s 在 Eclipse 中保存多个文件会导致“无法编辑文件”

我经常是 IntelliJ IDEA 用户,但是因为 jsTestDriver 不能与 IDEA 一起使用,我不得不使用 eclipse。CTRL每次使用-S快捷方式保存我的 javascript 文件时,我都会收到一条非常烦人的错误消息。

在 IDEA 中,它只是为我保存文件……而且我从来没有遇到任何问题。它实际上是有史以来最不引人注目的储蓄模式,我喜欢它。

但是使用这个 IDE - eclipse - 我必须不断地手动保存文件。无论如何,我已经习惯了,但是如果我对 2 个或更多文件进行更改,当我按 CTRL-S 时,此错误消息会弹出 2 次以上。这太烦人了。

错误信息

更糟糕的是,它影响了我使用 jsTestDriver 进行的单元测试结果!有时会运行 0 个测试,有时会在中途崩溃……这都是因为未保存文件。

谁能帮我解决这个问题?IDEA 也没有同时运行。只是 STS/Eclipse。

0 投票
2 回答
2811 浏览

jquery - $(this).load(function () { .... } ); 不与 JSTestDriver 一起工作

源代码使用 JQuery 将加载事件处理程序添加到元素。我正在使用 JSTestDriver 对此进行测试。

代码看起来像这样:-

当我运行测试时,警报(“Foo”)永远不会发生。如果我将其更改为:-

测试有效。

但是,如果源代码在 HTML 中单独执行,那么它运行良好,即使事件是“加载”,我也可以获得警报(“Foo”)。

这是 JSTestDriver 中的错误还是我做错了什么?做,我必须等到所有事件处理程序在单元测试中被触发。(关于 Thread.join() 的内容)?

-阿杰

0 投票
2 回答
3394 浏览

javascript - 将 QUnit 与 JSTestDriver 一起使用

我想使用JsTestDriver来驱动我的QUnit测试,但我对如何处理#qunit-fixture标记感到困惑。

标准的 QUnit 测试运行器是一个 HTML 页面。

JsTestDriver 有一个QUnitAdapter可用于加载和运行 test-script.js,但我没有看到任何用于获取标记的#qunit-fixture.

我错过了什么吗?适配器是否应该能够运行现有的 QUnit 测试?或者它只是将 QUnit 的断言框架与 JsTestDriver 一起使用的一种方式?

0 投票
1 回答
651 浏览

javascript - jsTestDriver + Nant = 测试目录问题

我正在开发一个项目,其中 Javascript 变得越来越复杂,需要作为我们自动化构建的一部分进行测试。

现在我有一个如下所示的项目结构:

在我的 Nant 构建中,我使用 Java 启动,然后将 js-test-driver.js 文件传递​​给它,并带有使用提供的配置文件的参数。现在我注意到,当我运行它时,它的配置文件路径似乎是相对于 js-test-driver 目录,而不是项目根目录。

我不认为这是一个问题,只需将以下内容放入我的配置文件中:

现在,如果我在 Nant 中运行我的任务,它会很好地启动测试驱动程序(目前在 Firefox 中)但只是失败了,说它找不到任何要运行的测试,但我发现令人困惑的是它将测试目录列为:

测试/../../src/tests/projectname.javascript/*.js

而且我一生都无法弄清楚为什么将这个“测试/”放在一切之前...如果我将 ../../../ 放入否定这个看似硬编码的测试目录,它告诉我路径不是有效的模式。

其他人有类似的事情或知道我哪里出错了吗?

0 投票
1 回答
458 浏览

javascript - 尝试在 OSX 10.6 上的 JSTestDriver 中使用 --browser 时权限被拒绝

我今晚开始使用JSTestDriver并让它正常工作而没有太多问题。我尝试使用 --browser 开关让它在我的本地系统上自动捕获 chrome 或 firefox;但是,它总是抛出一个错误,说“权限被拒绝”。我尝试使用 sudo 运行命令,但还是一样。

我可以使用终端中的上述路径打开 Firefox,因此知道该路径是有效的。

我觉得我错过了一些简单而小的东西。有没有人看到这个问题并知道我错过了什么?

更新 1:试图将 Firefox 移出 /Applications/ 目录,即使在超级用户帐户下运行(使用 sudo)仍然存在同样的问题。

0 投票
1 回答
1506 浏览

javascript - 参考错误:CoffeeScript + JsTestDriver + Qunit

目前我正在研究使用 CoffeeScript 和 JsTestDriver 的 TDD,但是我遇到了 JsTestDriver 抛出的 ReferenceError。

一些信息:

配置

控制器

测试代码

问题

JsTestDriver 抛出错误

试过:

  • 移除 jQuery、BackBone 等依赖项
  • 删除 Qunit 适配器并尝试使用 jstestdriver 断言
  • 在测试本身中添加了一个类,然后它就起作用了

似乎是某种出口问题或原型冲突?

0 投票
1 回答
127 浏览

javascript - 测试 JavaScript 对象的意外结果

我正在真正学习使用 JavaScript 对象的细微差别,但遇到了障碍。

我有一组“命名空间”对象来分割 DOM 和模型以进行操作。下面是代码:

使用 JsTestDriver,我正在做一些测试来尝试页面和模型对象的一些东西。具体测试如下:

在上面的测试中,第一个assertEquals通过;但是,第二个测试解析sandbox2.model.FirstName为“James”(初始值)。

有人对我如何更改代码(原始代码或测试代码)以允许我将page对象的值映射到对象有任何建议model吗?

0 投票
1 回答
347 浏览

jquery - 如何使用 jsTestDriver 在焦点事件中测试焦点

目前我正在使用 jQuery 1.6.1 和 jsTestDriver 框架来测试以下代码片段。主要目的是在焦点事件触发“#switcher”后测试“#area”输入元素是否获得焦点。它没有通过测试,但我看不出它为什么会失败。

一件奇怪的事情是,如果我在这个测试函数中使用firefox中的firebug设置了一个断点,那么在我稍后按下运行按钮后测试将成功通过。

有没有人遇到过同样的问题?还是 jsTestDriver 框架的错误?

我的夹具如下:

这是我的javascript测试代码

0 投票
2 回答
861 浏览

javascript - 在 JsTestDriver 中测试手动触发的事件

测试对象中事件处理的最佳方法是什么?我似乎无法弄清楚这一点。

我有一个对象,它设置了一些事件侦听器,当它观察到这些事件被触发时,它会更改页面上的一个 dom 对象。当我进行多个测试时,下面示例中的最后一个测试失败,如果我注释掉其他的就可以了。

我有一个看起来像的测试套件

如果前面的测试运行,最后一对断言将始终失败,但如果我注释掉其他测试,则将通过。我不知道我能做些什么来让它工作。

编辑:这是处理特殊标题的添加/删除的代码