【发布时间】:2021-11-04 05:43:46
【问题描述】:
我正在开发一个 React 应用,我们的团队正在为它编写 Cypress 测试。我们想测试基本的 CRUD 功能,所以我们创建了三个测试:
- 创建用户
- 更新用户
- 删除用户
CREATE 测试使用夹具来定义新用户。
UPDATE 和 DELETE 测试引用同一个夹具,并更新和删除在前一个测试中创建的用户。这意味着 UPDATE 和 DELETE 测试依赖于 CREATE 测试。这样可以吗?
根据我正在阅读的内容,听起来每个赛普拉斯测试都应该能够独立运行,我可以看到这里不是这种情况。
但是,最好的方法是什么?
我认为从 CREATE 测试中复制和粘贴相同的 10-20 行代码并在 UPDATE 和 DELETE 测试中复制它们是没有意义的。有没有办法我们可以抽象 CREATE 测试并将其包含在 UPDATE 和 DELETE 测试中?
或者我们应该将所有三个测试组合成一个“CRUD 用户”测试?
【问题讨论】: