功能规格和系统规格之间的区别

bgc*_*ode 5 rspec ruby-on-rails system-testing capybara

功能规格系统规格之间有区别吗?两者似乎都使用Capybara来测试整个应用程序,但是RSpec上有不同的文档。

Tho*_*ole 7

系统规格建立在Rails自己的系统测试之上,而功能规格是在Rails进行系统测试之前由RSpec实施的。如果您要开始一个新的项目,请编写系统规格,但是如果您已有现有的功能规格,则从功能上讲它们基本上是相同的,因此现在将它们更改为系统规格实际上并没有任何帮助。

  • 好奇为什么 RSpec 没有弃用特色规范 (2认同)
  • 还可以在官方文档中找到:https://relishapp.com/rspec/rspec-rails/docs/system-specs/system-spec “系统规范在事务中运行。因此,与 javascript 的功能规范不同,您不需要 DatabaseCleaner。 ” (2认同)
  • @woto只要您使用Rails 5.1+,您就可以在功能或系统规格上使用共享数据库连接和事务支持 (2认同)