0
我正在使用Cucumber的Cucumber构建我的网站测试框架。我找到了一种使用钩子在黄瓜的水豚司机之间切换的方法。我想在不测试JavaScript的情况下使用RackTest,因为我相信RackTest更快,因为它不会呈现页面。现在我已经创建了3个相同的测试,可以跳转到Google并检查标题是否为Google。每个测试使用不同的驱动程序。 Selenium和WebKit测试工作正常,但RackTest在“”上失败,我应该看到标题“Google”“测试。我附上了我的功能和步骤的副本,并测试了这篇文章中的宝石。cucumber - RackTest无法正常测试Selenium和WebKit都成功了
特点:
Feature: Rack Test
In order to run test faster
As a tester
I want to use Rack Test to preform all non-javascript related test
Scenario: Visit a page and check title
When I go to "http://www.google.com"
Then I should see the title "Google"
@firefox
Scenario: Visit a page and check title in Firefox
When I go to "http://www.google.com"
Then I should see the title "Google"
@webkit
Scenario: Visit a page and check title in WebKit
When I go to "http://www.google.com"
Then I should see the title "Google"
步骤:
When /^I go to "(http:\/\/[^"]*)"$/ do |url|
visit url
end
Then /^I should see the title "([^"]*)"$/ do |title_cont|
page.should have_selector "title", text: title_cont
end
鱼钩:
Before('@firefox') do
Capybara.current_driver = :selenium
end
Before('@webkit') do
Capybara.current_driver = :webkit
end
After('@firefox, @webkit') do
Capybara.use_default_driver
end
的Gemfile:
group :test do
gem 'capybara'
gem 'capybara-webkit'
gem 'cucumber'
gem 'cucumber-rails'
gem 'database_cleaner'
gem 'factory_girl_rails'
gem "rack-test", require: "rack/test"
gem 'rspec'
gem 'selenium-webdriver'
end
好的,谢谢!很高兴知道。 – Nick 2012-03-27 15:44:44