问题标签 [grunt-contrib-qunit]

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 回答
2924 浏览

javascript - 如何在 gruntfile.js 中放置 if else 块

代码:

如何在 gruntfile.js 中编写正确的 if else 语句。我正在使用 Visual Studio 项目文件调用 gruntfile.js。

0 投票
1 回答
341 浏览

javascript - QUnit 因咕噜声而失败,在浏览器中通过

在我正在开发的脚本中,我检查变量是否为instanceof HTMLAudioElement. 当我通过 grunt 任务运行 QUnit 时,它失败了

all.js实际上并没有引用HTMLAudioElement自己,它只是在我的主脚本中调用一些会使用它的代码。

all.html当我在 Firefox、Chrome 或 Safari 中打开时,所有测试都通过了。

这是预期的行为吗?它是否使用某种没有该构造函数的浏览器仿真?这是否意味着我的代码将在某些浏览器中失败,或者这只是配置错误而没有告诉我任何有用的信息?我如何解决它?

0 投票
2 回答
286 浏览

javascript - 在 javascript qunit 中模拟“this”

如果我有一个使用 Javascript 函数,像这样......$(this)[0].element.id;

我正在使用 Qunit,有没有一种方法可以模拟'this'我希望能够测试这个功能。

0 投票
1 回答
736 浏览

node.js - grunt, qunit, nodejs 后端测试

如何使用 qunit & grunt 测试 nodejs 后端代码。在 Gruntfile.js 中如何仅指定 js 文件,因此在 qunit repo 中,示例 Gruntfile.js 讲述了创建 html 文件,并且特别能够看到可以用 grunt 测试的 html 文件示例,但如果我想仅测试 nodejs 后端 java 脚本文件,那么我该如何使用它呢?有人可以为此指出 Gruntfile 的一些示例片段吗?

我的 Gruntfile.js 如下所示:

我的 test.js 文件如下所示:

但是在运行“grunt qunit”时,它给出了以下错误:

请让我知道在 Gruntfile 中提及的正确方法。

关于,-M-

0 投票
0 回答
303 浏览

javascript - 有没有办法让 qunit grunt 任务并行运行测试?

qunit 插件效果很好,但是我有很多测试(其中一些有点慢),运行所有测试需要 14 秒。如果我的测试可以并行运行,我认为这个时间可以减少一半。

作为尝试,我尝试使用我的测试创建两个 html 文件,但 qunit 插件按顺序运行它们。 已经有一个功能请求要求这样做,所以这可能是不可能的。但我希望那里有一位 PhantomJS 专家知道通过传入 PhantomJS 参数来做到这一点的方法。

如果这在 qunit 中是不可能的,但在另一个测试框架/grunt 插件中是可能的,我可能愿意切换到它。所以我可能会考虑“改用 X 框架”作为答案。

0 投票
1 回答
1493 浏览

node.js - 如何在浏览器中使用“csv-parse”?

我正在尝试运行csv-parse。它失败了

中的代码node_modules/csv-parse/lib/index.js(不是异步的!):

我尝试使用以下代码访问 csvparse:

在我的文件夹下的 QUnit 脚本中,Scripts我做

我的树结构是

所以我看到的问题是未加载“流”模块。那么如何让它在浏览器(Chromium 35)中工作呢?谢谢!

0 投票
1 回答
2032 浏览

gruntjs - 在“grunt-contrib-qunit”中找不到模块“grunt-lib-phantomjs”

我已经安装了phantomjs 1.9.7wgetting zip,然后将其移动到 ubuntu virtualbox 中的 PATH。

在 nodejs 项目上,触发npm install -no-bin-links正常,但grunt test失败并出现以下错误,

检查时,里面grunt-contrib-quint没有,grunt-lib-phantomjsnode_modules

但是,在我的本地机器上,我得到grunt-lib-phantomjsnpm install

package.json的是,

在 github 上引发了许多问题,但没有一个对我有用。

0 投票
1 回答
780 浏览

javascript - 如何通过本地服务器而不是文件系统使用 Grunt 运行 QUnit 测试?

我正在构建一个小型 JS 对象,用于管理 cookie、基本设置、获取和删除功能。如果我在本地服务器上运行,我已经使用QUnit编写了通过浏览器传递的测试。我正在像这样启动服务器:

python -m SimpleHTTPServer 8080

如果我针对本地文件系统(例如 file:///)运行测试,它们会失败,因为 cookie 依赖于主机。document.cookie总是""针对文件系统。我想继续使用我的 grunt 任务来运行测试,但这有点障碍。看起来有人预料到了这个问题,但可能从未发现失败的测试用例:http ://bugs.jqueryui.com/ticket/8954 。

建议?

0 投票
1 回答
2276 浏览

phantomjs - 致命错误:生成 ENOENT

Gruntfile.js 内容:

测试/index.html 文件内容:

tests.js 内容:

我正在开发 Ubuntu / Linux 环境。我还安装了 Phantomjs 并且工作正常。每当我尝试运行 grunt test 时,我都会收到一个致命错误:spawn ENOENT 错误。

虽然我尝试在浏览器上运行它,但它的 qunit 工作正常......

我无法确定是什么问题。我是否在这里缺少更多配置。

grunt test --debug 告诉我:

0 投票
1 回答
326 浏览

javascript - 咕噜声没有正确运行 Qunit 测试

情况:我目前正在使用 QUnit 在 TypeScript/Javascript 中测试一个项目,当我在浏览器中运行它们时一切正常。

问题:我正在尝试使用 grunt 在无头模式下运行 QUnit 测试(我需要它来进行持续集成测试)并且测试无法正常运行。

配置 这是我当前设置的方式:

Gruntfile.js

包.json

然后我有一个.travis.yml文件来运行所有这些。我不知道这是否真的很重要,因为测试既不能在 travis 也不能在我的本地环境中运行,但无论如何都是这样:

这是 travis 构建中出现错误的部分:http: //puu.sh/eKpWj/35614680e1.png

(当我在浏览器中运行它们时,我目前有大约 20 个断言通过。此外,打字稿编译运行正常。)

编辑:正如有人问的那样,这是 Test.html 文件的内容:http: //pastebin.com/LN3igmjc

编辑 2:这也是config.js的内容: