采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师可以帮忙看看嘛~我的upload组件测试一直提示act我不太清楚应该如何解决这个问题,是异步代码成功后更改了state的值就应该使用act包裹嘛。
act
state
老师我也给fileEvent包裹了,可是还是会报错。希望老师有空帮忙看看,谢谢老师!https://github.com/19Qingfeng/hy-store
fileEvent
同学你好 这里其实你是没有写完后面的逻辑造成的 对于一个 react 的更新,后面只要跟着一个 wait 的断言就可以了,你后面的代码注释了,所以就会报错。
改成:
// act 删除掉
fireEvent.change(fileInput, {
target: {
files: [testFile],
},
});
// 这个注释去掉
await waitFor(() => {
expect(wrapper.queryByText(
'test.png'
)).toBeInTheDocument();
现在 test 就能够通过了
老师我不太理解我使用act包裹之后如果没有写await断言就会报错,这个是什么原因呢
和 act 没关系,fireEvent 的源代码中就是使用 act 就行包裹的,使用 react-testing-library 一般都不需要使用 act 进行包裹,出错原因在于代码中有 Promise,Promise 被调用后,后面需要 waitFor
非常感谢!
同学你好 请问 upload 组件在哪里呢? components 当中并没有看到 upload 这个组件的名称
老师我叫file啦
登录后可查看更多问答,登录/注册
设计,开发,测试,发布再到 CI/CD,从0到1造轮子
2.3k 9
1.1k 16
1.1k 12
1.4k 11
2.0k 11