以下是一个包含 Promises 的单元测试函数的示例解决方法:
// 假设我们要测试的函数是一个异步函数,返回一个 Promise
function asyncFunction() {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve('成功');
}, 1000);
});
}
// 单元测试函数
function testAsyncFunction() {
return asyncFunction().then((result) => {
if (result === '成功') {
console.log('测试通过');
} else {
console.error('测试失败');
}
}).catch((error) => {
console.error('测试失败', error);
});
}
// 运行测试
testAsyncFunction();
在上面的示例中,我们定义了一个 asyncFunction
,它返回一个 Promise,延迟 1 秒后解决为 '成功'
。然后我们编写了一个 testAsyncFunction
的单元测试函数,它调用 asyncFunction
并在 Promise 解决后进行断言。如果返回的结果是 '成功'
,则打印 '测试通过'
,否则打印 '测试失败'
。如果 Promise 被拒绝,则打印出错误信息。
最后,我们运行 testAsyncFunction
函数来执行单元测试。