黄瓜 – Rails集成测试

我正在寻找为已经构建的Rails 3应用程序设置一堆集成测试.
该应用程序使用Rails 3和 Ruby 1.9.2构建.我已经看到了对Capybara,Cucumber和RSpec 2的推荐,但我不确定每种产品的优点是什么.

我也注意到他们似乎紧密地联系在一起.我见过的帖子似乎总是谈到使用黄瓜的水豚,或者使用黄瓜的Rspec.

每个人的优点/缺点是什么?是否有一些最佳组合?

解决方法

所有这些测试工具都属于测试环境的不同部分.

如果你想设置集成测试,那么你应该使用Cucumber,因为它没有真正的替代品. Cucumber旨在简化行为驱动开发,但即使您没有BDD,它也非常适合集成测试.

Capybara任务声明是“webrat替代方案,旨在支持所有浏览器模拟器”.因此,要模拟浏览器部分(http请求,DOM操作等),您有两个替代Webrat或Capybara.黄瓜与它们都很好地融合在一起.实际上,它会检测您在系统中安装了哪一个,并且认使用它.

另一方面是Rspec. Rspec不是集成测试的工具,而是单元测试(使用BDD方法).在http://www.pragprog.com/titles/achbd/the-rspec-book中,它的解释非常清楚.黄瓜处于应用行为的外围,而rspec处于类行为的内圈. rspec的替代方法是经典的Test :: Unit类.

有关更多信息,请参阅

> Cucumber
> Capybara
> Webrat
> RSpec
> Test::Unit

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...