探索测试替身:深入理解Fetch API测试
1. 理解Fetch API
在进行测试前,需了解 fetch 函数的调用方式。为后续测试做规划,先将全局函数替换为自定义的间谍函数(spy),接着添加新测试确保调用正确,最后更新 onSubmit 测试以调整现有行为。
2. 用间谍函数替换全局函数
为监视回调属性,可将间谍函数作为回调属性值传入。而对于全局函数,在测试运行前覆盖其值,测试结束后恢复为原始函数。
由于 global.fetch 是组件的必要依赖,可在测试套件的 beforeEach 块中设置默认间谍函数,使其在所有测试中就绪。该块也是设置存根(stub)默认返回值的好地方。
设置默认间谍函数的步骤如下:
1. 在 test/CustomerForm.test.js 的外层 describe 块顶部添加以下声明:
describe("CustomerForm", () => {
const originalFetch = global.fetch;
let fetchSpy;
...
})
originalFetch 常量用于测试完成后恢复间谍函数, fetchSpy 变量用于存储 fetch 对
超级会员免费看
订阅专栏 解锁全文
71

被折叠的 条评论
为什么被折叠?



