Tag: 单元

摩卡asynchronoustesting处理错误

我试图用摩卡创build一个testing用例,但是我的代码是asynchronous的。 这很好,我可以添加一个“完成”callback函数“它”,这将正常情况下完美的罚款。 但是当试图testing负面情况时,只会使testing失败。 我想做这样的事情,但asynchronous: someObject.someMethod(null).should.equal(false) 相反,我只能testing一个callback返回,而不是testing真正发生了什么(null是无效的): it('this should return false or an error', function(done) { someObject.someMethod(null, '', done); }); 我想写这样的东西: it('this should return false or an error', function(done) { someObject.someMethod(null, '', done).should.throw(); }); 但是这会导致这个错误: "TypeError: Cannot read property 'should' of undefined" 我也尝试使用期望和断言,但同样的规则适用。 任何线索? 谢谢 编辑#1: 我没有成功尝试: 使用true / false return (true); // ok retur (false); […]

有没有办法在node.js中启动exception或testing失败的debugging器?

我正在寻找的基本上是nosetest –pdb –pdb-failures 鼻子testing框架 nosetest –pdb –pdb-failures 。 我正在使用摩卡进行testing。 我想要做的就是运行testing mocha –break-on-exception –break-on-failure一旦遇到exception或断言失败就停止执行testing,将启动节点检查器 ,并允许我内省runninng代码。 这是可能的任何地方在node.js世界,任何库或testing框架?

摩卡没有运行testing目录中的所有testing

这是我的文件夹结构 src/ a.js b.js test/ a.spec.js b.spec.js 我试过跑步 ~/…/src $ mocha ~/…/src $ mocha test ~/…/src $ mocha test/ ~/…/src $ mocha ./test/ ~/…/src $ mocha ./test/*.js 但没有工作…我得到的只是一个testing文件运行,其余的被忽略。 文件说,(1)应该做的工作,但没有。

testingHapijs端点而不碰到数据库

我正在使用Hapi js开发restApi。 该项目的结构如下: |-Root server.js |-router routes.js |-handlers authHandler.js |-db userDb.js 一个authentication请求将命中routes.js并转发给authHandler.js,然后调用userDb.js。 userDb.js与数据库进行通信并将结果返回给authHandler.js,该响应将响应返回给客户端。 我一直在试图写一个testing,其中userDb.js不会与数据库交谈 为此,我使用Hapi的inject来调用路由,而不需要真正启动服务器。 我正在努力弄清楚如何模拟调用链中的数据库,以便我可以提供一个虚拟的响应。 所以简而言之,我想在testing时将userDb.jsreplace为模拟。

我如何使用Hapi将数据stream式传输到浏览器?

我试图使用stream发送数据到Hapi的浏览器,但不能指望我们如何。 具体来说,我正在使用请求模块。 根据文档reply对象接受一个stream,所以我试过了: reply(request.get('https://google.com')); 抛出一个错误。 在文档中说stream对象必须与streams2兼容,然后我试着: reply(streams2(request.get('https://google.com'))); 现在,不会抛出服务器端错误,但在浏览器中,请求永远不会加载(使用chrome)。 然后我尝试了这个: var stream = request.get('https://google.com'); stream.on('data', data => console.log(data)); reply(streams2(stream)); 而在控制台的数据输出,所以我知道stream不是问题,而是哈比。 我怎样才能在Hapistream式传输工作?