将 watir 与 Rubymine 一起使用时,如何在第二台显示器上动态显示浏览器?
How can I dynamically display browser on 2nd monitor when using watir with Rubymine?
如何在双显示器设置中强制我的浏览器出现在 Ruby我的对面的显示器上?
我正在尝试 test/debug 功能场景。我的工具集是 RubyMine、Ruby、watir、page-object-gem 和 Cucumber。我有一个双显示器设置,但浏览器总是出现在与 Ruby我的相同的显示器上。
我对 hooks.rb 文件进行了一些更改:
Before do
@browser = Watir::Browser.new :firefox
@browser.window.move_to(1985,24)
@browser.window.maximize
puts " Browser Position " + @browser.window.position.to_s
end
After do
@browser.close
end
这是一个非常笨拙的解决方案。它总是出现在与 rubymine 相同的监视器上然后移动。我必须对位置进行硬编码才能使用第二台显示器,因此它可能无法在不同的双显示器设置上工作。
问题:
- 如果有这个配置项,它是什么?
你能建议一种实现以下内容的方法吗?它会去哪里?
如果(dual_monitor)
然后 browser.move.window_to(other_monitor)
由于我在家里和办公室写测试,而且我在两个地方都有双显示器,而且它们的大小不同,所以我只使用一个环境变量:
if ENV['MOVE_BROWSER'] =~ /home/i
browser.window.move_to(2080,0)
elsif ENV['MOVE_BROWSER'] =~ /office/i
browser.window.move_to(-2562, -600)
end
screen_width = browser.execute_script("return screen.width;")
screen_height = browser.execute_script("return screen.height;")
browser.driver.manage.window.resize_to(screen_width,screen_height)
这也确保了其他测试人员不会受到我的偏好的影响。我在可用的最大屏幕上使用 Sublime,然后在另一个屏幕上使用浏览器。
如何在双显示器设置中强制我的浏览器出现在 Ruby我的对面的显示器上?
我正在尝试 test/debug 功能场景。我的工具集是 RubyMine、Ruby、watir、page-object-gem 和 Cucumber。我有一个双显示器设置,但浏览器总是出现在与 Ruby我的相同的显示器上。
我对 hooks.rb 文件进行了一些更改:
Before do
@browser = Watir::Browser.new :firefox
@browser.window.move_to(1985,24)
@browser.window.maximize
puts " Browser Position " + @browser.window.position.to_s
end
After do
@browser.close
end
这是一个非常笨拙的解决方案。它总是出现在与 rubymine 相同的监视器上然后移动。我必须对位置进行硬编码才能使用第二台显示器,因此它可能无法在不同的双显示器设置上工作。
问题:
- 如果有这个配置项,它是什么?
你能建议一种实现以下内容的方法吗?它会去哪里?
如果(dual_monitor) 然后 browser.move.window_to(other_monitor)
由于我在家里和办公室写测试,而且我在两个地方都有双显示器,而且它们的大小不同,所以我只使用一个环境变量:
if ENV['MOVE_BROWSER'] =~ /home/i
browser.window.move_to(2080,0)
elsif ENV['MOVE_BROWSER'] =~ /office/i
browser.window.move_to(-2562, -600)
end
screen_width = browser.execute_script("return screen.width;")
screen_height = browser.execute_script("return screen.height;")
browser.driver.manage.window.resize_to(screen_width,screen_height)
这也确保了其他测试人员不会受到我的偏好的影响。我在可用的最大屏幕上使用 Sublime,然后在另一个屏幕上使用浏览器。