问题标签 [nodeunit]

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

javascript - 使用带有 nodeunit 的 sinon 模拟

我正在学习将 sinon 与nodeunit一起使用,专门用于模拟。推荐的方法是使用sinon-nodeunit。根据文档,应该可以通过每个测试函数mock的参数方法使用模拟。test

但是,这似乎不起作用。如果我nodeunit在包含以下内容的文件上运行 -</p>

——我明白了:

sinon我已经sinon-nodeunit通过npm install.

0 投票
4 回答
4335 浏览

javascript - 找不到Nodeunit命令?

我在 Windows 7 上运行并使用 cygwin 很好地安装了节点。我正在关注如何在 mcmahon 的 nodeunit 网站上进行操作:http: //caolanmcmahon.com/posts/unit_testing_in_node_js

我使用 npm 安装 nodeunit,它说它安装得很好,但是当我去调用它时,nodeunit,它说在所有不同的目录中都找不到命令。

我是否必须设置某种路径变量?

0 投票
2 回答
2961 浏览

http - 如何使用 NodeUnit 和 Express 测试 POST 请求?

我正在用 Node.js 编写一个简单的 REST 服务(只是在试验),试图弄清楚 Node 是否已经足够成熟。我也在使用 NodeUnit 进行单元测试。

现在,NodeUnit 作为测试 GET 请求的测试框架工作得很好,使用 HttpUtils,但是,测试 POST 请求似乎并不明显。

测试 GET 如下所示:

但是如何测试 POST 请求?我可以将'GET'更改为'POST'并尝试向'client'写入一些内容,但是在调用.fetch之前这不起作用,因为还没有连接。而且它在 .fetch 回调函数中也不起作用,因为那时请求已经被执行了。

我查看了 nodeunit 代码,目前似乎不支持发布数据。所以这是我的问题:

  • 测试 POST 请求需要什么?
  • 我是否应该在单元测试中测试 POST 请求,还是属于集成测试,我应该使用另一种方法?
0 投票
1 回答
1065 浏览

unit-testing - 有没有办法通过 maven/ant 运行 nodeunit 测试

我在 nodeunit 中为我的 node.js 应用程序创建了一些单元测试。我希望能够通过 maven / ant 运行测试,因为我打算通过 Jenkins 运行它们。有没有人成功做到这一点?

0 投票
1 回答
3436 浏览

javascript - Nodeunit test.throws 似乎没有发现错误

我正在尝试为我使用 Nodeunit 在 Node.js 中编写的模块创建一个测试套件。该模块是一个基本的音乐播放列表,允许在播放列表中添加和删除曲目。

如您所见,有些地方会根据传入的错误数据引发错误。

所以这是我的测试套件。

在编写测试套件时,我使用 test.throws 作为假设,基本上只是将代码块包装在 try-catch 语句中,并根据错误块检查 catch。显然我错了,因为当我使用 Nodeunit 运行测试时,Node 显示模块抛出的错误消息,而不是测试套件捕获错误。我是否错误地使用了 test.throw 案例?

0 投票
1 回答
436 浏览

node.js - 在nodeunit中处理异步的正确方法是什么?

我对整个堆栈来说都是全新的——javascript、node.js、coffeescript、nodeunit。认为我应该一步一步做吗?你可能是对的,但我仍然不会这样做。

这是测试文件:

在内部,它只是 http 库的包装器。我正在使用节点 0.4.11。这实际上不起作用。这里有两个异步调用。如果我在咖啡 REPL 中手动执行此操作,它可以工作——但 nodeunit 比我快得多,所以我遇到了一些事情,聪明地说,我称之为竞争条件。咧嘴笑

这里是'transmit'的实现: Http = require 'http'

在运行测试之前,我需要确保服务器已绑定到端口,并且我需要确保“.transmit”已完成其内部回调以获得响应,然后再进行断言。

什么是干净的方式(或至少是有效的方式)来做到这一点?

0 投票
2 回答
1796 浏览

node.js - 如何将 node.js 模块“nodeunit”与咖啡脚本文件一起使用

我试图让 nodeunit 模块在一个咖啡脚本项目中工作,但似乎连基本的测试都无法运行。这是我的示例 Coffeescript 需要'nodeunit'

不幸的是,当我运行 '$ nodeunit example.coffee' 时,我得到了错误输出:

example.coffee:4 exports.testSomething = (test) -> ^

module.js:296 抛出错误;^ SyntaxError: Unexpected token > at Module._compile (module.js:397:25) at Object..js (module.js:408:10) at Module.load (module.js:334:31) at Function._load (module.js:293:12) 需要 (module.js:346:19) 在 /usr/local/lib/node/nodeunit/lib/nodeunit.js:75:37 在 /usr/local/lib/node /nodeunit/deps/async.js:508:13 在 /usr/local/lib/node/nodeunit/deps/async.js:118:13 在 /usr/local/lib/node/nodeunit/deps/async.js :134:9 在 /usr/local/lib/node/nodeunit/deps/async.js:507:9

任何人都可以帮助我使用 Node.js 在 Coffeescript 中启动和运行一个简化的测试吗?

提前致谢

0 投票
1 回答
2065 浏览

node.js - 如何使用节点单元和猫鼬获得异步结果?

如何在 nodeunit 和 mongoose 中获得异步结果?我试过下面的代码,它似乎挂在数据库回调上,从不返回结果或错误。

0 投票
3 回答
10036 浏览

javascript - 使用 Jasmine 根据参数值存根 JS 回调

我的 node.js 应用程序中有一个 JS 方法,我想对其进行单元测试。它对服务方法进行多次调用,每次都向该服务传递一个回调;回调累积结果。

如何使用 Jasmine 存根服务方法,以便每次调用存根时,它都会使用由参数确定的响应调用回调?

这是(就像)我正在测试的方法:

我想指定当使用 arg1 和 arg2 调用 service_method 时,存根将使用特定响应调用 f 回调,而当使用 other1 和 other2 调用它时,它将使用不同的特定响应调用相同的回调。

我也会考虑一个不同的框架。(我试过 Nodeunit,但没有让它做我想做的事。)

0 投票
1 回答
434 浏览

testing - 如何在 Nodeunit 中添加自定义断言

有没有办法向传递给每个测试的 NodeUnittest对象添加自定义断言?

我想做类似的事情: