`sauce_whisk` gem 与水豚兼容吗
Is `sauce_whisk` gem compatible with capybara
我正在 运行 开发一个 rails 应用程序并用水豚编写我的测试用例。
我需要 运行 所有那些有酱汁实验室的人。
我尝试使用 sauce_whisk,但是用水豚写的那些不工作。
....
it "should google", :run_on_sauce => true do
visit "http://google.com"
end
...
无效
而
...
it "should google too", :run_on_sauce => true do
driver = Selenium::WebDriver.for :firefox
driver.get "http://google.com"
end
...
有效。
有人可以帮忙解决这个问题吗?
我跟着这个 link : https://docs.saucelabs.com/tutorials/ruby/
这里是一个例子,几个使用 sauce_whisk 和 Capybara 的工作实现。
这是一个使用水豚和 RSpec:
的简单示例
jobname = scenario.full_description
sessionid = ::Capybara.current_session.driver.browser.session_id
::Capybara.current_session.driver.quit
job = SauceWhisk::Jobs.fetch sessionid
job.name = jobname
job.save
if scenario.exception
SauceWhisk::Jobs.fail_job sessionid
else
SauceWhisk::Jobs.pass_job sessionid
end
以及使用 Cucumber 的稍微复杂的实现:
require "capybara/cucumber"
require "selenium/webdriver"
require 'sauce_whisk'
Around do |scenario, block|
block.call
sessionid = ::Capybara.current_session.driver.browser.session_id
::Capybara.current_session.driver.quit
jobname = "#{scenario.feature.name} - #{scenario.name}"
job = SauceWhisk::Jobs.fetch sessionid
job.name = jobname
job.passed = scenario.passed? ? true : false
job.save
end
Before do | scenario |
Capybara.register_driver :selenium do |app|
capabilities = {
:version => "48.0",
:browserName => "chrome",
:platform => "OS X 10.11"
}
url = "http://<username>:<access_key>@ondemand.saucelabs.com:80/wd/hub".strip
Capybara::Selenium::Driver.new(app,
:browser => :remote, :url => url,
:desired_capabilities => capabilities)
end
Capybara.default_wait_time = 10
Capybara.current_driver = :selenium
job = SauceWhisk::Jobs.fetch ::Capybara.current_session.driver.browser.session_id
job.name = "#{scenario.feature.name} - #{scenario.name}"
job.save
end
来源:
https://github.com/saucelabs-sample-test-frameworks?utf8=%E2%9C%93&query=Capybara
我正在 运行 开发一个 rails 应用程序并用水豚编写我的测试用例。 我需要 运行 所有那些有酱汁实验室的人。 我尝试使用 sauce_whisk,但是用水豚写的那些不工作。
....
it "should google", :run_on_sauce => true do
visit "http://google.com"
end
...
无效
而
...
it "should google too", :run_on_sauce => true do
driver = Selenium::WebDriver.for :firefox
driver.get "http://google.com"
end
...
有效。
有人可以帮忙解决这个问题吗? 我跟着这个 link : https://docs.saucelabs.com/tutorials/ruby/
这里是一个例子,几个使用 sauce_whisk 和 Capybara 的工作实现。
这是一个使用水豚和 RSpec:
的简单示例jobname = scenario.full_description
sessionid = ::Capybara.current_session.driver.browser.session_id
::Capybara.current_session.driver.quit
job = SauceWhisk::Jobs.fetch sessionid
job.name = jobname
job.save
if scenario.exception
SauceWhisk::Jobs.fail_job sessionid
else
SauceWhisk::Jobs.pass_job sessionid
end
以及使用 Cucumber 的稍微复杂的实现:
require "capybara/cucumber"
require "selenium/webdriver"
require 'sauce_whisk'
Around do |scenario, block|
block.call
sessionid = ::Capybara.current_session.driver.browser.session_id
::Capybara.current_session.driver.quit
jobname = "#{scenario.feature.name} - #{scenario.name}"
job = SauceWhisk::Jobs.fetch sessionid
job.name = jobname
job.passed = scenario.passed? ? true : false
job.save
end
Before do | scenario |
Capybara.register_driver :selenium do |app|
capabilities = {
:version => "48.0",
:browserName => "chrome",
:platform => "OS X 10.11"
}
url = "http://<username>:<access_key>@ondemand.saucelabs.com:80/wd/hub".strip
Capybara::Selenium::Driver.new(app,
:browser => :remote, :url => url,
:desired_capabilities => capabilities)
end
Capybara.default_wait_time = 10
Capybara.current_driver = :selenium
job = SauceWhisk::Jobs.fetch ::Capybara.current_session.driver.browser.session_id
job.name = "#{scenario.feature.name} - #{scenario.name}"
job.save
end
来源:
https://github.com/saucelabs-sample-test-frameworks?utf8=%E2%9C%93&query=Capybara