node.js - Node.js 的单元测试

标签 node.js unit-testing

我是nodejs新手,需要为node项目编写单元测试。我尝试学习摩卡,有两个问题:

  1. 当我为函数 A 编写单元测试时,A 中也使用函数 B,那么如何模拟 B 的输出?

  2. 如何在 app.js 中对这些端点进行单元测试。如 app.get、app.put。 有人可以给我一些建议或简单的例子吗?

有人能给我一些关于为 Nodejs 编写单元测试的建议吗,非常感谢。

非常感谢大家。

最佳答案

回答问题 1,

如果b方法的输出用于a方法,则可以先进行b方法的测试。

否则,您可以在测试方法的 before 部分中准备 b 的结果,并在 a 方法中使用它。

这取决于您的测试方法。

回答第二个问题 -

您可以使用superagent发送get或post请求...

一些代码示例...

要求('应该'); var 断言 = require("断言"); var request = require('superagent'); var Expect = require('expect.js'); 那么,

描述('yourapp',函数(){ 之前(函数(){ //函数开始 启动你的服务器代码 //函数结束 }) 描述('服务器',函数(){ 描述('一些描述',函数(){ it('应该返回 json 作为响应', function(done){ request.post('http路径') .send(JSON.parse("你的json")) .end(函数(res){ 期望(res).to.存在; 期望(res.status).to.equal(200); Expect(res.text).to.contain('ok'); 完毕(); }); }) }); }) 之后(函数(){ //停止你的服务器 }) }); 这里完成是异步方法测试的单元测试组件的一个重要方面。

一些引用 -

superagent

this blog post

希望这对您有帮助,

谢谢

关于node.js - Node.js 的单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28640814/

相关文章:

javascript - 如何防止 ChildProcess 内存不足? Electron/Node.js

node.js 缓冲 tcp 数据和分隔符

node.js - 全局显示环境(在Web应用程序前端显示环境变量)

c# - 为什么在使用样本生成器时会得到循环引用 DummyApiController --> DummyApiController?

unit-testing - Kentico 9 的单元测试项目测试在测试资源管理器中不可见

node.js - node.js 上的永远模块不起作用 - 警告

javascript - 使用 Node.js 从 MySQL 获取数据并将其显示在索引页上

c# - VS2012 中的单元测试 dotnet 最佳选择?

c++ - 使用断言对函数进行单元测试

php - 如何添加 Auth 作为 Controller 依赖项以在 Laravel 4 中进行测试