- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
目前,我使用 cucumber.yml 中的并行配置文件来加载特定于环境的文件,并使用 hooks.rb 来设置浏览器。我使用“parallel_cucumber 功能”运行我的测试。我的 hooks.rb 文件里没有太多内容:
Before do
@browser = Watir::Browser.new :firefox
end
After do
@browser.close
end
配置文件如下所示:
parallel: FIG_NEWTON_FILE=local.yml --no-source --color --format pretty
有没有办法更改我的 hooks.rb 文件,以便所有功能都针对一组浏览器(firefox、chrome、safari)运行?是否可以通过命令行传递文件名或环境?
最佳答案
你绝对可以通过命令行传递环境名称。查看我的 env.rb 文件:
case ENV['BROWSER']
when 'ff', 'Firefox'
browser = Selenium::WebDriver.for :firefox
browser_name = 'Firefox'
when 'chrome'
browser = Selenium::WebDriver.for :chrome
browser_name = 'Chrome'
when 'debug'
debug_profile = Selenium::WebDriver::Firefox::Profile.new
debug_profile.add_extension "firebug-1.9.1-fx.xpi"
browser = Selenium::WebDriver.for :firefox, :profile => debug_profile
browser_name = 'Firefox (Firebug)'
when 'mobile'
mobile_profile = Selenium::WebDriver::Firefox::Profile.new
mobile_profile['general.useragent.override'] = "Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en)
AppleWebKit/420+ (KHTML, like Gecko) Version/3.0
Mobile/1A535b Safari/419.3"
browser = Selenium::WebDriver.for :firefox, :profile => mobile_profile
browser_name = 'Mobile'
when 'headless'
headless_profile = Headless.new
headless_profile.start
browser = Selenium::WebDriver.for :firefox
browser_name = 'Firefox'
else
browser = Selenium::WebDriver.for :firefox
browser_name = 'Firefox'
end
if URLS[ENV['URL']].nil?
environment = 'dev'
url = 'http://' + URLS['dev']
domain = URLS['dev']
else
environment = ENV['URL'].upcase
url = 'http://' + URLS[ENV['URL']]
domain = URLS[ENV['URL']]
end
if ENV['CLIENT'].nil?
client = 'user/password'
else
client = ENV['CLIENT']
end
puts "Browser " + browser_name
puts "URL " + url
puts "Environment: " + environment
puts "Client: " + client
puts "Domain: " + domain
test_env = { :browser => browser,
:browser_name => browser_name,
:url => url,
:env => environment,
:client => client,
:login => nil,
:domain => domain }
现在,当我运行 Cucumber 时,我通过以下方式调用环境:
Cucumber BROWSER=ff
关于ruby - 使用 ruby + watir-webdriver + cucumber 和 parallel_tests gem 在多个浏览器中运行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21371181/
我正在使用 Ruby + Cucumber + Watir WebDriver 为我的网络项目创建功能测试。我使用简单的标签按优先级划分我的场景:@critical、@major 等。我使用 Rake
我目前尝试为我们的 Cucumber + Watir-WebDriver 验收测试实现 parallel_tests。到目前为止它都很棒。 但是,我们已经习惯了来自 Cucumber 的精美 HTML
为了让我们的测试运行得更快,我决定使用并行测试。 https://github.com/grosser/parallel_tests 然而,与往常一样,这并非没有问题。测试在完成之前被杀死。 ...被
我正在通读 parallel_tests 源代码,但还不理解它,所以我想我应该直截了本地在这里问我的问题。 parallel_tests gem 是同时还是依次运行您的 sweet 中的所有测试? (
在运行 parallel_rspec spec 时随机失败, Controller 有任何解决方案。 在 Gemfile 中 group :development, :test do gem 'p
我正在使用 parallel_tests 并行运行一堆 rspec 测试框架。在并行化测试之前,我将测试结果输出到一个 html 文件中,如下所示: rspec --format html --out
我对 zeus-parallel_tests 和他的初始化有疑问: 我的 gem 文件: group :development, :test do gem "sqlite3" gem "rsp
使用此命令在 Cucumber 中使用 Ruby gem Parallel_Tests 运行多个功能时: parallel_cucumber features/ 在我的项目根目录下有一个 cucumb
我有带有 cucumber 功能的 Rails 4 应用程序。在一些测试中,我考虑了 sphinx 数据,例如: @javascript @sphinx Feature: Edit a service
目前,我使用 cucumber.yml 中的并行配置文件来加载特定于环境的文件,并使用 hooks.rb 来设置浏览器。我使用“parallel_cucumber 功能”运行我的测试。我的 hooks
当我尝试使用 parallel_tests Gem 并行运行我的规范时,我收到以下错误消息: foo:~/Projects/cucumber-capybara-saucelabs/spec/reque
我是一名优秀的程序员,十分优秀!