Codesandbox.io 中的 React-Testing-Library 问题
Posted
技术标签:
【中文标题】Codesandbox.io 中的 React-Testing-Library 问题【英文标题】:Issue with React-Testing-Library in codesandbox.io 【发布时间】:2019-08-18 14:32:10 【问题描述】:我是 React 的相对菜鸟。想在这个沙箱basic react sandbox 中练习一些 tdd。似乎测试代码正在影响应用程序组件状态 如果您在浏览器和测试之间切换,您会看到测试项目被添加到列表中 - 即使我在测试中运行渲染和清理。
不确定我做错了什么?
【问题讨论】:
【参考方案1】:Codesandbox 在运行测试时遇到了一些问题。那是因为它们在浏览器中运行,而不是在单独的 jsdom 环境中。我建议你改为在你的机器上运行测试。
【讨论】:
谢谢,顺便说一句,使用 Enzyme 时 CodeSandbox 工作正常这里是另一个沙箱 codesandbox.io/s/6nwj46qwn3 我认为这是因为 Enzyme 模拟了渲染的组件,而 RTL 试图进行真正的渲染 对,浅层 vs 渲染 - 另一件事可能是我一直在使用的 RTL getByTestId,因为 data-testId 属性存在于应用程序输出中,它首先匹配真实的。有趣的是 RTL 的创建者有一个 youtube 视频,他遇到了同样的问题youtube.com/watch?v=kCR3JAR7CHE以上是关于Codesandbox.io 中的 React-Testing-Library 问题的主要内容,如果未能解决你的问题,请参考以下文章
https://codesandbox.io 如何实现对本地版本的依赖
有没有办法在 codesandbox.io 中使用 npm 脚本?