请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

请问老师测试jest.fn中的问题

请问下老师我这里使用jest.fn()返回了一个promise,但是在case中打印的时候发现返回值是Promise

这里我查阅文档也是应该有返回值呀,我不太明白是我哪里写错了。老师有时间的话希望老师可以指教一下~
图片描述
图片描述
图片描述

这个是我的代码仓库地址,老师运行npm run test代码就会报错了,因为最后一个casefetchSuggestion返回了undefined导致代码报错。

https://github.com/19Qingfeng/hy-store

正在回答 回答被采纳积分+3

1回答

提问者 hy_wang 2021-09-09 17:02:33

老师我找到问题了,是`create-react-app`默认将

resetMocks

设置为true,也就是每次测试case之前会将jest.fn()中的所有mock实现都清楚掉。所以我改到case中去写就好了,但是我还是想请问老师。老师的jest.fn()写在了外部,为什么可以

0 回复 有任何疑惑可以回复我~
  • 张轩 #1
    文档是这样写的 https://jestjs.io/docs/configuration#resetmocks-boolean
    我猜想只针对每个测试中的 mock 生效,而不包括case 之外的 mock,你可以做个实验测试一下试试。
    回复 有任何疑惑可以回复我~ 2021-09-10 09:48:18
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信