我一直在学习如何为 React 应用程序编写自动化测试,它提出了关于如何最好地测试与该应用程序的一系列交互的问题。
假设我有一个 React 应用程序,它允许用户将学生分配到教室中的座位:Here's an image of what such an app would look like .
我想测试创建一个新学生,将该学生添加到教室的一个座位,然后将该学生移回中间列(我将其称为花名册)中未就座的学生区域。
为此编写测试的最佳方法是什么?拥有一个大型测试用例是否有意义,其中将包括我正在测试的每个交互的断言(创建一个新学生,将其在教室和花名册之间移动)?
或者我应该创建多个案例,其中一个依赖于另一个?换句话说……
测试1)提交表单时检查新学生是否创建成功
测试 2) 使用在测试 1 中创建的学生,将学生移动到教室的座位上
测试 3) 学生现在坐在座位上(由于测试 2),将其移回花名册区域
我的另一个问题是 React 测试库是否足以满足此目的。或者这会被视为应该使用 Cypress 编写的端到端测试吗?
非常感谢您的反馈!
最佳答案
您描述的过程肯定可以作为集成测试使用 react-testing-library
进行测试。来自docs/faq ,它鼓励测试组件树中足够高的组件,而不模拟子组件,以模拟和测试实际用户交互的情况。
另请查看 this Kent C. Dodds blog post .
关于javascript - 如何测试一系列交互?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63146145/