Rspec的feature specsrequest specs之间的概念区别是什么?

从功能说明文档:



对于要求规格:



我知道功能规格使用Capybara,而请求规格则不使用。但这几乎不值得采用不同的概念。

最佳答案

概念上的差异是您通常在测试用户故事,并且所有交互都应通过用户界面来驱动。那就是Capybara的用武之地。一个请求规范仍在测试您的应用程序的行为,并且不期望验收测试具有可读性。因此,具有用于验收测试的改进语法的功能。

技术差异包括请求规范包装了Rails集成测试,而功能规范则没有。这意味着根据请求规范,您可以使用get,post,put,delete和assert来响应响应。使用功能规范,您应该通过浏览器 push 所有交互,并使用诸如访问和对页面进行断言之类的方法。

我建议阅读github上rspec-rails源代码中的feature_spec.feature。我希望这有帮助。

关于ruby-on-rails - RSpec:功能和请求规范之间有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15173946/

10-10 22:46