如何用磁带验证错误消息?
How to validate Error message with Tape?
我目前正在学习如何使用 Tape 进行单元测试。我已经能够验证我的测试中是否抛出了错误。但是,我们如何验证抛出的错误消息是否等于预期的消息?
示例单元测试:
var test = require('tape'),
ExampleObject = require('/path/to/ExampleObject');
test("Pass invalid argument to function", function(assert){
assert.throws(function(){
new ExampleObject(undefined, "validParameter")
}, TypeError, "Should throw TypeError for firstParam");
assert.end();
});
示例对象:
function ExampleObject(param1, param2){
if(typeof param1 !== 'string') {
throw new TypeError('ExampleObject - typeof for param1 should be string');
}
if(typeof param2 !== 'string') {
throw new TypeError('ExampleObject - typeof for param2 should be string');
}
/*
/ do stuff
*/
};
提前致谢!
我在 Github 回购中打开了一个问题。目前,.throws() 不支持同时检查错误类型和消息。
我目前正在学习如何使用 Tape 进行单元测试。我已经能够验证我的测试中是否抛出了错误。但是,我们如何验证抛出的错误消息是否等于预期的消息?
示例单元测试:
var test = require('tape'),
ExampleObject = require('/path/to/ExampleObject');
test("Pass invalid argument to function", function(assert){
assert.throws(function(){
new ExampleObject(undefined, "validParameter")
}, TypeError, "Should throw TypeError for firstParam");
assert.end();
});
示例对象:
function ExampleObject(param1, param2){
if(typeof param1 !== 'string') {
throw new TypeError('ExampleObject - typeof for param1 should be string');
}
if(typeof param2 !== 'string') {
throw new TypeError('ExampleObject - typeof for param2 should be string');
}
/*
/ do stuff
*/
};
提前致谢!
我在 Github 回购中打开了一个问题。目前,.throws() 不支持同时检查错误类型和消息。