问题标签 [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 回答
1183 浏览

jasmine - pages.open() 从不调用回调

我正在使用 PhantomJS 1.8.2 使用 JsTestDriver 运行一些 Jasmine 单元测试。使用 Chrome 测试运行良好,但使用 PhantomJS 大约有一半的时间,测试结果是没有找到测试用例。

我已将问题缩小到 PhantomJS 无法打开本地 JsTestDriver 页面 ( http://localhost:9876/capture)。以下是如何重现这个,大约 50% 的时间,Loaded ... with status ...消息永远不会显示:

  • 在本地启动 JsTestDriver 服务器
  • phantomjs phantomjs-jstd-bridge.js

该文件phantomjs-jstd-bridge.js如下所示:

第一行日志(Loading ...)始终显示,但来自回调的第二行仅打印了大约一半的时间。

这可能是什么原因?在网络浏览器中打开有问题的 URL 每次都可以正常工作。

有没有办法获得更多关于为什么 PhantomJS 不调用回调的信息?

0 投票
2 回答
1221 浏览

eclipse - qunit 测试用例可以用 ecplise 编写吗?

最近我给了一个带有 Eclipse 插件的 Qunit 任务。我可以找到关于用 Qunit 编写的测试用例的信息,以及使用 Quint-Adaptaer 在 JS-test runner 中为其转换和构建解决方案的信息。但我的问题是,我在 ecplise 中有没有可以在 Qunit 中编写测试用例并使用 JS-Test Runner 运行的环境?

0 投票
1 回答
734 浏览

javascript - 带有 jsTestDriver 的 WebStorm 找不到 jQuery

看到这个问题,但重命名为jQuery无济于事。

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

我有这个配置文件:

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

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

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

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

为什么它没有检测到 jQuery?它正确包含它,因为如果我拼错了路径,它会抱怨缺少文件。

0 投票
0 回答
90 浏览

hudson - Hudson 无法使用 jsTestDriver 打开浏览器

试图运行一个弹出警报窗口的测试用例。这在哈德逊不起作用,但在命令提示符下同样工作正常

错误:它显示一个窗口,说明“交互式服务检测”,并说该程序与 Windows 不完全兼容,

JsTestDriver 版本 --> 1.3.5

火狐——> 14.0.1

哈德逊 --> 2.2.1

任何帮助将不胜感激

0 投票
1 回答
8427 浏览

android - 如何从 Windows 在 android 模拟器浏览器中启动 URL 链接

我有问题。我想在android浏览器中自动化测试。

我的要求:

我有JS Test Driver需要在 android 浏览器中测试的 maven 项目。

所以我想做的是

在 Mavenpom.xml文件中,而不是指向 chrome 作为

创建bat file将在 android 模拟器浏览器中运行启动 URL 链接的命令并将其指向该bat file.

我的问题是我不知道要编写什么命令来从命令行在 android 模拟器浏览器中午餐特定的 URL。

有什么建议么?

0 投票
1 回答
1444 浏览

jquery - 如何使用 js-test-driver 测试 fadeTo、fadeOut 等 jquery 动画函数?

我试图为我的 js 函数编写一些测试用例,但我遇到了一个恼人的问题。

在我的脚本中有一个代码部分,如:

或者:

这在我的页面上运行良好。

当我想写一些 js-test-driver 单元测试用例时,问题就来了。当我想验证 fadeTo 函数时:

...

...

然后它失败了。

原因可能是这是一个动画,当我尝试验证时,它没有完成动画。

有人可以知道一种能够在 js-test-driver 中测试 jQuery 动画函数的方法吗?

0 投票
0 回答
238 浏览

ember.js - 使用 js-test-driver 在 ember.js 应用程序上执行集成测试的问题

我正在尝试将一个小型 ember.js 应用程序集成到现有网站中。代码工作得很好,但我无法让我的集成测试工作。

消息传递.js

消息传递.html

如您所见,这非常微不足道。像浏览器中的魅力一样工作。鉴于 Ember 是一个自以为是的、约定优于配置的框架,集成测试似乎是正确的方法。因此,在尝试使用我们现有的工具时,我的 jsTestDriver 单元测试如下所示:

jsTestDriver.conf:

消息传递测试.js

在测试执行期间,ember.js 抛出异常:

浏览器控制台输出:

抛出错误时的堆栈顶部是:

呈现的 html 的正文是:

我意识到考虑到 ember.js 绑定的工作方式,我可能需要使用 jsTestDriver 的 AsyncTestCase,但由于 ember 在渲染过程中抛出异常,我需要先解决这个问题。

想法?

0 投票
1 回答
340 浏览

continuous-integration - QUnit 和 Sinon.js 持续集成

我正在使用本机运行良好的 QUnit+Sinon.js。当我尝试将其构建到持续集成过程中时,出现了问题。我正在使用 js-test-driver 框架,以便能够在持续集成环境中运行它。过去我在没有 Sinon.js 的情况下使用它,这没有任何问题。但是在我包含了 Sinon.js 插件之后,它就完全不起作用了。当我尝试运行测试时,它说:

我的 js-test-driver 配置:

有趣的是,有一个运行良好的 QUnit index.html 文件(当我打开这个 html 时,每个测试都通过了):

所以看起来和js-test-driver和Sinon.js有冲突。如果我删除所有相关的 Sinon.js 测试和包含的 sinon 插件,那么它可以工作。如果我只是删除与 sinon 相关的测试,它仍然会失败。如果我不删除 sinon.js 而是删除所有测试并使用“ok(true)”断言创建一个 emty 测试,那么它仍然会失败并显示相同的错误消息 (contentTest.js:60: TypeError: qTest is not a函数),但是我的测试文件仅包含 10 行(当我的文件仅包含 10 行时,如何在第 60 行出现错误?)。

感谢大家提前提供任何帮助!

0 投票
1 回答
1919 浏览

jasmine - 使用 jasmine 和 jstestdriver 运行多个规范

我已经编写了多个规范文件,用于对网页上的各种模块进行单元测试。如果我单独运行它们,一次一个它们工作正常。但是当我尝试按顺序运行所有文件时,只有 spec 文件夹中的第一个文件有效,而所有其他测试都失败了。任何帮助,将不胜感激。

每个规范文件都使用 requirejs 加载一个静态页面并将它们呈现在页面上。呈现页面后,我会检查标题、文本等是否正确。规范文件看起来像这样。关于Spec.js-->

FooterSpec.js-->

jstestDriver.conf-->

当我运行此设置时,“关于”页面不会呈现。由于所有关于页面的测试用例都失败,因此仅呈现页脚页面。

0 投票
1 回答
324 浏览

javascript - 在 intellij 中使用 requirejs 时 JsTestDriver 断言

我试图编写一些 javascript 单元测试,使用 requirejs 和 jsTestDriver intellij 插件。当我在 IDE 中运行它们时,即使有一些错误,我也没有错误。我只有在打开浏览器控制台时才能看到它们。是否有人设法使 IDE 插件将失败显示为 require 函数?下面是我的代码和一些说明我的问题的屏幕截图。

Intellij jsTestDriver 插件测试结果

我的浏览器控制台