Chai / Expect - 如何在开发的同时工作?似乎真的很难从 expect().to.throw 到记录错误
Chai / Expect - how to work while developing? Seems really hard to go from expect().to.throw to logging the error
我有这个代码
expect(function() {
//some error
}).to.throw(Error);
我如何轻松从这里开始记录测试中的错误?
我真的必须输入 try/catch 和 console.log 吗?这不违背我最终需要删除它们才能通过测试的事实吗?
Chai .toThrow()
匹配器可用于以下方式:
检查抛出的错误是否属于特定实例
expect(function() {
throw SyntaxError('sample error message');
}).to.throw(SyntaxError);
检查错误消息的文本
expect(function() {
throw SyntaxError('sample error message');
}).to.throw(/sample error message/);
如果这不适合您的用例,您始终可以 try/catch
和 inspect/make 对捕获错误的对象进行断言:
try {
throw SyntaxError('sample error message');
} catch(e) {
expect(e.message).to.equal('sample error message');
}
我有这个代码
expect(function() {
//some error
}).to.throw(Error);
我如何轻松从这里开始记录测试中的错误?
我真的必须输入 try/catch 和 console.log 吗?这不违背我最终需要删除它们才能通过测试的事实吗?
Chai .toThrow()
匹配器可用于以下方式:
检查抛出的错误是否属于特定实例
expect(function() { throw SyntaxError('sample error message'); }).to.throw(SyntaxError);
检查错误消息的文本
expect(function() { throw SyntaxError('sample error message'); }).to.throw(/sample error message/);
如果这不适合您的用例,您始终可以 try/catch
和 inspect/make 对捕获错误的对象进行断言:
try {
throw SyntaxError('sample error message');
} catch(e) {
expect(e.message).to.equal('sample error message');
}