Ruby on rails 分别使用Cucumber和Rspec测试的方法和内容?

Ruby on rails 分别使用Cucumber和Rspec测试的方法和内容?,ruby-on-rails,ruby,testing,rspec,cucumber,Ruby On Rails,Ruby,Testing,Rspec,Cucumber,我在Selenium驱动程序中使用RubyonRails 3.2.2、cucumber-Rails-1.3.0、rspec-Rails-2.8.1和capybara-1.1.2。我想知道如何以及如何分别使用Cucumber和Rspec进行测试?也就是说,我应该用Cucumber处理什么“行为”,用Rspec处理什么,以便以适当的方式划分测试“关注点” 例如,为了测试视图,我应该使用Cucumber或RSpec测试页面内容中是否存在CSSid?或者两者都可以?它们都可以测试节点属性,但我只会在请求

我在Selenium驱动程序中使用RubyonRails 3.2.2、cucumber-Rails-1.3.0、rspec-Rails-2.8.1和capybara-1.1.2。我想知道如何以及如何分别使用Cucumber和Rspec进行测试?也就是说,我应该用Cucumber处理什么“行为”,用Rspec处理什么,以便以适当的方式划分测试“关注点”


例如,为了测试视图,我应该使用Cucumber或RSpec测试页面内容中是否存在CSS
id
?或者两者都可以?

它们都可以测试节点属性,但我只会在请求规范中使用Capybara。归根结底,这是个人偏好。我同时使用rspec和capybara,但是在测试请求/期望时,capybara的语言语法与rspec的语义更为合理。

使用UnitTest和capybara进行测试,因为它更简单、更快速。有关详细信息,请签出此URL


使用RSpec隔离应用程序的各个部分(控制器、模型和视图),以测试它们。(使用Mock、Stub和其他提供RSpec的工具)

使用Cucumber一起测试应用程序的所有部分,就像您在浏览器中看到应用程序一样。。。例如,如果您需要在不使用Cumber的情况下测试应用程序的登录表单,您应该:

1) 打开shell并运行rails服务器

2) 转到浏览器并键入登录的url

3) 填写表单字段

4) 单击提交按钮


您应该自动化这个过程,以及Cucumber的类似过程,以便其他人使用Rspec进行测试。

我也想测试JavaScript行为。我应该专门使用Cumber来做这些事情吗?Cumber用于测试,它支持使用Selenium的javascript和ajax请求。也就是说(换句话说),为了测试JavaScript,我应该只使用Cucumber还是也应该使用RSpec?对不起,我没有意识到。。。我个人不只是测试Javascript代码,但有些人使用它,有一个插件用于Rspec(应用全局规则:Js只是应用程序的一部分,那么应该使用Rspec)我有一个疑问,所以我提出了一个新问题: