问题标签 [fetch-mock]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - Redux Jest 测试 fetchMock.getOnce 不工作
我正在使用 Redux、fetchMock、redux-mock-store 来编写一个 redux 动作测试。基于这个文档,https: //redux.js.org/recipes/writing-tests,我写了我的,但似乎 fetchMock 不起作用。redux 操作上的 get 请求使用原始值而不是 fetchMock 数据。
谁能告诉我哪里错了?
行动:
测试:
接口:
reactjs - 运行多个使用 fetch-mock 的单元测试时出现网络错误
我正在使用fetch-mock
(v.9.11.0) 和 React 测试库来测试登录表单组件,一旦我有超过 2 个具有模拟获取响应的单元测试,我就会开始收到ECONNREFUSED
错误,并且我的测试失败并显示Network Error
信息。
我的一个单元测试的示例(i18nConfigOptions
在文件开头声明):
我不认为这是一个设置/拆卸问题,因为我正在fetchMock
单独声明该对象,并确保在每次测试后将其休息。
我可能还应该提到,如果我将选项中的delay
参数设置为fetchMock
0 以外的任何值,这些错误从第一次测试开始发生,这可能指向更广泛的问题。
也许最奇怪的是,我在 M1 MacBook Pro 上看到了错误,但在 2019 年的基于 Intel 的 MacBook Pro 上却没有。这可能是 M1 问题吗?也许测试在 M1 上执行得太快了?将测试拆分为单独的文件也可以防止错误发生,并且所有测试仍然通过。
显然发生了一些奇怪的事情,这让我很困惑。任何建议都感激不尽!
react-native - React Native & Jest:如何正确测试在 useEffect 中调用 fetch 的组件。“无法在未安装的测试渲染器上访问 .root”
我想在 Jest 中测试我的组件,并且它正确显示获取的数据。我有以下组件,它有一个useEffect
调用函数的钩子getData
。getData
获取到后端 API,将响应转换为json
,然后返回json
给组件。然后数据更新状态并显示在屏幕上。返回的数据是一个非常简单的数组,如下所示:[{ title: "test", id: 1 }, ...]
.
我想运行以下测试,尝试在global.fetch
.
此测试失败并出现以下错误:
有人可以帮助我了解测试从useEffect
钩子中获取数据的组件的正确方法Jest
吗?谢谢。
javascript - 在 Jest 中运行测试用例时出现错误`TypeError: debug is not a function`
每当我运行 jest 时,我都会收到以下错误jest --coverage
;
Stackoverflow 说我还不能在我的帖子中添加图片。所以请打开链接查看错误。谢谢
代码和配置如下:
Package.json
Jest Configuration
example.test.js
早些时候,该项目是用 javascript 编写的,这段代码运行良好,但现在它已迁移到 typescript。运行测试会引发上述错误。我一直在努力解决这个问题;没运气 :(
我也尝试使用 fetch-mock-jest 但无法正常工作。如果有人可以帮助我解决问题。那会很好!提前致谢 :)
调试更新
当我尝试调试 fetch-mock 时,看看发生了什么。得到了一些见解。当我单击第 1 行的调试时,它会打开debug/index.js
,如我们在屏幕截图 1 中看到的那样:
屏幕截图 1
当我使用 VSCode 的调试器实际调试测试时,我看到,第debug
1 行的变量值是空对象,即{}
(令人惊讶),可以在屏幕截图 2 中看到:
屏幕截图 2
我仍然无法弄清楚为什么代码在实际运行时无法导入包内容。:(
javascript - 如何获取模拟准确的服务器错误?
问题:
取模
源JS文件:
"[ object object ]"
因此,当我真正想要的是访问完整的模拟服务器错误时,我的 catch 语句返回一个无用的字符串。
reactjs - 如何测试异步动作?
我有一个动作:
我试图为这个动作写一个测试:
然后我收到一个错误:TypeError: Cannot read property 'then' of undefined 为什么会发生这种情况以及如何正确测试此操作?我的错误是什么?