ruby-on-rails – 如何使用rails cucumber,rspec,capybara测试视
我想要两者,通过
Javascript测试Ajax内容和正常的切换内容.
我的设置是: - Rails 3.1 - Rspec (Edge) - Cucumber (Edge) - Capybara (Edge) 例如,如果选择了某种类型的此模型,我想要一个仅显示特定字段的表单: 文章可以是外部文章(网址) 什么是最好的方法来实现这一点,还有测试? 它应该是服务器端的,以便加载部分,如果选择了某种文章类型, 解决方法
实际上受到Fransico(在评论中)的启发,我写下了我的知识.
我写自己的答案,也可以帮助别人…. 首先我要提一下,我回答我的问题 – 仅进行集成测试. 但是,当使用黄瓜(边缘)导轨(3.1),水豚和硒进行集成测试时,您必须注意以下事项: 看,你已经更新了所有的宝石! 1)激活你的驱动程序,如果你还没有 功能/支持/ capybara.rb Capybara.javascript_driver = :selenium 2)目前只有Firefox< = 4使用webdriver selenium for rails,因为我发现几个小时后从头开始配置和安装每个组件,如机架等. 3)Capybara本身不会处理太多,这可以帮助你点击例如在列表上,特别是jquery-tokeninput. 3.1)我使用它来从列表中的标记中选择一个项目: When(/^I select the option containing "([^"]*)" in the Tag List/) do |text| find("li:contains('#{text}')").click end 您可能会发现此方法使用“locate”而不是find,请勿尝试此操作,api / driver已更改为find. 4)为您的JS / Ajax响应代码添加自己的帮助器/查找器/单击例程, 有关更多信息,请查看Ryan Bates的屏幕录像(http://railscasts.com),他介绍了几个关于测试Rails的主题;检查Javascript的最新版本,例如 或者这个博客:http://openmonkey.com/2010/04/09/javascript-testing-with-cucumber-capybara/ 希望这对其他人也有帮助. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |