har*_*arm 111 rspec ruby-on-rails rspec-rails
从功能规范文档:
功能规范是用于通过应用程序执行功能切片的高级测试.他们应该只通过其外部接口(通常是网页)来驱动应用程序.
并根据要求规格:
请求规范提供了一个围绕Rails集成测试的瘦包装器,旨在通过完整堆栈驱动行为,包括路由(由Rails提供)而不是存根(由您决定).根据请求规范,您可以:
- 指定单个请求
- 跨多个控制器指定多个请求
- 在多个会话中指定多个请求
我知道功能规格使用Capybara并且请求规格没有.但这几乎不值得采用不同的概念.
Ric*_*dan 146
概念上的区别在于您通常会测试用户故事,并且所有交互都应该通过用户界面进行.这就是Capybara的用武之地.请求规范仍在测试应用程序的行为,并且没有接受测试可能具有的可读性的期望.因此,功能是用于验证验证的改进语法.
技术差异包括请求规范包装Rails集成测试,而功能规格则不包括.这意味着使用请求规范,您可以使用get,post,put,delete和assert方法来响应.使用功能规范,您应该通过浏览器驱动所有交互,并使用访问和断言等方法对页面进行操作.
我建议在github上的rspec-rails源代码中阅读feature_spec.feature.我希望这有帮助.
| 归档时间: |
|
| 查看次数: |
17224 次 |
| 最近记录: |