首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用should.js和Mocha检查抛出新错误

用should.js和Mocha检查抛出新错误
EN

Stack Overflow用户
提问于 2015-11-20 20:00:33
回答 1查看 4.7K关注 0票数 5

我有一个错误抛出如下:

代码语言:javascript
复制
if (somethingBadHappened) {
    throw new Error('what were you thinking, batman?')
}

现在,我想编写一个测试,以检查这是否在预期时抛出:

代码语言:javascript
复制
should(MyClass.methodThatShouldThrow()).throws('what were you thinking, batman?')

但这实际上会造成错误。我做错了什么?Should.js文档很轻,因为它是从assert.throws继承的,但是即使是它的文档也不能以“should.js”的方式工作?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-20 20:04:21

正如您已经发现的,您的代码执行抛出错误的函数& should没有机会捕捉它。

为了允许正确的断言,您需要将函数调用包装在一个匿名函数中。

代码语言:javascript
复制
should(function ()  {MyClass.methodThatShouldThrow();} ).throw('what were you thinking, batman?')
票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33835127

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档