[英]How do I write a snapshot test for a vanilla JavaScript function?
[英]How do I write a test for a function that should do nothing?
有时候,我写的函数在某些情况下应该什么都不做。 他们不做任何事情不仅可以接受,而且实际上是必需的行为。 是否有测试功能的模式以确保它没有副作用?
举个例子,我目前正在测试一个如下所示的函数:
function onRowOfIconsClicked(iconName) {
if (iconName === 'new') {
doSomeAwesomeStuffImAlreadyTesting();
}
// We haven't implemented the other icons yet, so for now,
// do nothing and don't throw an error if a different icon
// is clicked
}
我将如何编写测试用例断言目前的规定,即当onRowOfIconsClicked
被称为与iconName
比其他"new"
,该函数什么都不做?
所有JavaScript函数都有一个返回值,即使该返回值undefined
因为没有用于指定返回值的显式return
语句。
那么你可以做的是测试如果使用除'new'
之外的iconName
参数调用函数,则测试该函数返回undefined
。 因为undefined === undefined
,所以会通过测试。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.