【发布时间】:2017-03-26 17:01:49
【问题描述】:
使用 Mocha 和 Chai,我注意到许多不可靠的测试。我希望这些都失败。类似的 StackOverflow 问题是因为异步而不使用 done()。即使这是我的情况,我也肯定希望它失败!
我的错字应该是exist。除非我在特定位置输入类型,否则它不会告诉我这一点。
- 为什么这个测试没有失败?
- 是不是我做错了什么?
- 如何让 Mocha / Chai 更严格?
这些都通过了!?
expect(component.find('textarea')).to.exest;
expect(component.find('textarea')).to.not.exest;
expect(component.find('textarea')).to.exsdafdsafdsfdsafest;
这不是。
expect(component.find('textarea')).BLAHASDF.exest;
TypeError: Cannot read property 'exest' of undefined
嗯,谢谢 Chai 现在告诉我!
好吧,我有点傻,但我可以向你保证,这让我非常沮丧!
是否有一些设置,或者我缺少什么,或者是否有另一个库胜过这个?
【问题讨论】:
-
你可以断言你的断言:
expect(expect(component.find('textarea')).to.exest).to.exist -
@robertklep ha,如果你这样做
expect(expect(component.find('textarea')).to.exest).to.exest会怎样?我想你也可以断言断言的断言吗? :D -
@fabio.sussetto 某人应该发明一个递归断言接口 ;) FWIW,一个不存在的属性将是
undefined,这是你可以测试的东西。但是,如果您需要确保没有拼写错误,基于函数的界面可能更合适:) -
@robertklep,好人。大声笑
标签: reactjs testing npm mocha.js chai