问题标签 [chai-as-promised]

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

promise - Mocha single test with promises fails and passes at the same time

I am currently writing some tests in a legacy system and am confused about a test result here. I have one test here which fails as expected but mocha shows as a result 1 passing and 1 failing.

I am using Bluebird Promises, mocha, chai-as-promised and sinon with sinon-chai for spies and stubs. This is the test (I have removed stuff not needed for understanding my problem):

This test fails as expected, because the function is actually invoked. However, mocha tells me that one test passed and one test failed. This is the only test I have implemented in this module.

I am pretty sure this has something to do with the promises but I don't seem to figure out what it is. Also if I add

after the then-block, mocha still claims that one test passed. The method is also just invoked one time and I have only one synthetic dataset which I am working with. So I don't see what it is which tells mocha that this has passed while failed...

Any ideas?

Regards, Vegaaaa

0 投票
1 回答
193 浏览

protractor - 兑现承诺

我是新的承诺,我有以下功能

为什么之前有return关键字expect,它的意义是什么,如果我们不这样做会发生什么return

0 投票
2 回答
866 浏览

protractor - 量角器测试通过但未执行测试

我是 java 脚本量角器黄瓜框架的新手。

我可以看到一年前在这里提出了类似的问题,但这也在一年前的量角器版本中得到了修复。因此提出了一个新问题。

我正在使用最新版本的黄瓜,量角器,量角器黄瓜框架,柴,柴承诺。我正在使用 Visual Studio 代码作为编辑器。节点版本为 6.11.4。请查看下面的 package.json 以了解所有版本详细信息。

当我执行测试时,它会在不到一秒的时间内完成并获得通过结果,但它只是启动浏览器,然后在浏览器中不做任何事情。

请查看我正在使用的文件并建议我问题出在哪里。我不确定这是否是最新版本的量角器中的公共汽车。

量角器.conf.js:

包.json:

测试功能:

test.steps.js:

控制台输出:

Selenium Chrome 节点控制台输出:

0 投票
1 回答
121 浏览

mocha.js - 如何在使用 mocha 和 chai 解决承诺后测试类的属性

我正在按照承诺尝试使用 Mocha + Chai 进行一些单元测试

测试确实通过了。但是我想检查一下z.x equals 1promise 的值是否已经解决。我怎么做?

这只是一个原型。我想在我的真实案例中测试更多的属性

0 投票
3 回答
5859 浏览

javascript - 期望承诺解决或拒绝并不能正确地通过 mocha 和 chai-as-promised 的测试

使用Mochachai-as-promised,我正在尝试测试我的承诺是否被正确解决和拒绝。但是expectchai-as-promised 提供的功能并没有正确地导致测试失败。例子:

测试.js

当我执行mocha test.js

你可以看到断言错误似乎被抛出了,但是 mocha 没有发现它们。如何让 mocha 识别失败?

0 投票
3 回答
6623 浏览

javascript - chai-as-promised:单个测试中的多个期望语句

我正在使用chai-as-promised来测试一些承诺。我的问题是我不确定如何在单个测试中包含多个期望语句。为了expect().to.be.fulfilled使其正常工作,我需要将其退回,如下所示:

...或使用notify,像这样:

当我有另一件事需要检查时,问题就出现了,例如某个函数被调用,如下所示:

这里的问题是,因为doSomething()是异步的,所以sinon_function_spy当我调用它时可能还没有发生调用expect,这使得这个测试变得不稳定。如果我使用 a then,像这样:

然后测试在技术上按预期通过和失败,但由于then调用中抛出的异常,promise 被拒绝,它会失败。同样,如果我有一个承诺被拒绝的情况:

然后检查sinon_function_spynever 被调用,因为 promise 被拒绝并且没有调用then

如何让这两个expect语句可靠地执行并返回正确的值?

0 投票
0 回答
127 浏览

javascript - 检查由 supertest 使用 chai-as-promised 解析的响应对象中的属性

我如何body使用 chai-as-promised 检查房产?我正在尝试访问 SuperAgent文档中突出显示的响应正文,但断言.should.have.property('res')失败。我console.log(res)在一个单独的测试中得到了这些结果。检查诸如domain_events将满足测试的属性。

具体的断言错误是:AssertionError: expected { Object (domain, _events, ...) } to have property 'res'.

编辑:在 Bergi 的评论中回答。

0 投票
0 回答
107 浏览

selenium - 即使抛出错误,Chai-As-Promised 也能通过测试

我在这里传递量角器的 Click() API 调用作为承诺。

即使我通过了错误selectionValue,它也会显示为测试通过,但下一次测试失败。

在此处输入图像描述

0 投票
1 回答
2834 浏览

mocha.js - chai-as-promised should.eventually.equal 不通过

我正在尝试编写 chai-as-promised 的最小工作示例,以了解它在测试返回承诺的函数时是如何工作的。

我有以下功能:

和以下测试功能:

但是,对此进行测试会导致测试未通过,而是出现很长的错误,将其粘贴在此处:https ://pastebin.com/fppecStx

问题:代码有问题吗,或者这里似乎有什么问题?

0 投票
1 回答
255 浏览

typescript - 柴如许深属性测试

我有一个插入表格并返回Promise. 我正在测试chai-as-promised重复插入被拒绝。我要测试的是拒绝和原因码。当我运行函数并记录时,console.log(err.reason.code)我得到ER_DUP_ENTRY. 确认这对我的测试来说已经足够了,所以我尝试如下断言:

根据chaijs的说法,语法似乎是正确的。但我得到了一个失败的测试:

这似乎与我的控制台日志所说的属性相矛盾。