【发布时间】:2017-06-22 05:22:54
【问题描述】:
随着 Rails 5.1 的发布,它们包括了系统测试。这意味着我们也可以在 Rails 中测试我们的 JavaScript。 我看到 Rails 指南以两种方式解释了示例测试创建文章:通过系统测试和通过集成测试。
现在的问题是:在 Rails 5.1 之前,我在集成测试中编写复杂的测试用例。但是现在我有两种选择来编写测试用例。 我可以写测试用例像
test: should create article
在集成测试中,但我也可以在系统测试中编写相同的测试用例。
那么什么时候应该选择系统测试来写测试用例,什么时候选择集成测试呢?
【问题讨论】:
-
集成测试不使用浏览器,所以无法在其中测试js。
-
这不是选择最好的测试类型(集成或系统),而是通过测试集成测试中的行为和系统测试中的用户交互来同时使用两种类型(集成和系统)。例如,如果您想测试一条数据是否在用户单击(交互)时使用 ajax 加载,请使用 System.并使用集成测试来测试返回的数据是否符合您的预期。或者,如果您不想同时测试交互和行为,请选择最适合您的。
标签: ruby-on-rails testing capybara integration-testing acceptance-testing