我有这个函数,它为api调用调用util函数。util函数根据api结果解析或拒绝。
现在,我需要对具有以下结构的回调函数进行单元测试。
`theClassMethod : () => {
return utilMethod().then(
result => { this.functionOne() //Test this function is called },
error => { this.functionTwo() //Test this function is called }
)
}`
util方法返回一个promise,如下所示:
utilFunc = (data :string) :Promise<ResultData[]> => {
return new Promise(async (resolve, reject) => {
try{
resolve(data)
}catch{
reject(error)
}
})
}
https://codesandbox.io/s/vjnwy1zw75?fontsize=14
我试过的
模拟util方法来解决/拒绝。调用类方法并执行断言。它不起作用,并且测试始终以假阳性通过。
我花了很多时间寻找类似的问题。这里的大多数问题是要测试代码,例如:
theClassMethod : () => { utilMethod.then().catch()}
我要解决的问题是测试解决方案,然后在then块中拒绝回调then(function1, function2)。必须测试function1内部的代码块是否调用了某些预期的函数。
冉冉说
相关分类