gpt4 book ai didi

unit-testing - 如何在带有 Jest 的 react-native 中使用模拟的 fetch() 对 API 调用进行单元测试

转载 作者:行者123 更新时间:2023-12-03 08:39:19 25 4
gpt4 key购买 nike

在 React Native 中,我使用 fetch执行网络请求,但是 fetch不是明确需要的模块,因此在 Jest 中模拟似乎是不可能的。

甚至尝试调用使用 fetch 的方法在测试中将导致:

ReferenceError: fetch is not defined



有没有办法在 Jest 的原生 react 中测试此类 API 请求?

最佳答案

另一种模拟全局 fetch 的方法目的:

const mockSuccesfulResponse = (
status = 200,
method = RequestType.GET,
returnBody?: object
) => {
global.fetch = jest.fn().mockImplementationOnce(() => {
return new Promise((resolve, reject) => {
resolve({
ok: true,
status,
json: () => {
return returnBody ? returnBody : {};
},
});
});
});
};
上面的辅助方法可以按照您想要的任何方式进行修改:-) 希望它可以帮助某人

关于unit-testing - 如何在带有 Jest 的 react-native 中使用模拟的 fetch() 对 API 调用进行单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36069731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com