我们已经将 React JS 用于前端,我们需要编写端到端测试。在网上研究后,我们遇到了 2 个选项:
1. Selenium WebDriver
2. React Test Utils (https://reactjs.org/docs/test-utils.html)
我的理解是,使用 React Test Utils,您可以模拟点击并使用 findRenderedDOMComponentWithXXX 等方法检查 HTML 元素的状态,并且您可以从命令行运行这些测试,这样它们会更快。
Selenium 做同样的事情,但在浏览器中,它将允许您以行为驱动开发风格编写测试(使其更具可读性)
我的困惑:
我们可以使用 React Test Utils 来测试一个完整的网页(复杂的组件)还是只测试简单的定制组件更好。例如:如果我们有一个像 Tasks 这样的组件,它允许您添加任务、删除任务、更改优先级,它使用 Input、DropDown 和 Toggle 等组件。
因此,将 React Test Utils 用于整个 Tasks 组件是一个好主意,还是我们应该将它用于较小的单个组件,例如 Input、DropDown、Toggle
要测试完整的任务组件,请使用 Selenium 编写端到端测试。
其他几点:
- React Test Utils 中的模拟方法需要传递事件数据,这会增加少量工作。
如果有人可以帮助我理解两者之间的区别,那就太好了。