要使用Jest测试Promise链,你需要确保在测试异步代码时返回一个Promise
以下是一个示例,展示了如何使用Jest测试一个包含Promise链的函数:
// myFunction.js
function myFunction() {
return new Promise((resolve, reject) => {
// 模拟异步操作
setTimeout(() => {
resolve('Success');
}, 1000);
})
.then((result) => {
return result.toUpperCase();
});
}
module.exports = myFunction;
// myFunction.test.js
const myFunction = require('./myFunction');
describe('myFunction', () => {
it('should return a promise chain that resolves to the string "SUCCESS"', () => {
// 注意:返回Promise链,以便Jest可以正确处理异步测试
return myFunction().then((result) => {
expect(result).toBe('SUCCESS');
});
});
});
在这个例子中,myFunction
返回一个Promise链。我们在测试用例中调用myFunction
并链接.then()
方法来处理结果。最后,我们期望结果为大写字符串"SUCCESS"。
请注意,为了确保Jest正确处理异步测试,你需要在测试用例中返回Promise链。这样,Jest会等待Promise链完成,然后再进行断言和结束测试。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。