我的黄瓜套件可以在 Firefox 和 Chrome 上运行。其中一些需要调整浏览器大小,这在 Chrome 中处理起来很糟糕。由于需要调整大小的行为不需要跨浏览器测试,所以当检测到的浏览器是 Chrome 时,我想通过某种方式忽略它们。有没有办法做到这一点?也许有钩子或在台阶上?我目前正在调整前后挂钩的大小。
问问题
254 次
2 回答
0
在您的测试助手中,您可以添加这些方法:
def use_chrome_driver
Capybara.register_driver :selenium_chrome do |app|
Capybara::Selenium::Driver.new(app, :browser => :chrome)
end
Capybara.current_driver = :selenium_chrome
end
def setup
Capybara.current_driver = :selenium
end
您所有的测试都将使用 selenium 默认的 webdriver,然后当您需要使用 Chrome 时,只需在测试开始时调用 use_chrome_driver 方法,如下所示:
def test_login_with_chrome
use_chrome_driver
...
end
您还可以将您需要的正确浏览器大小的 firefox 驱动程序添加到您的助手中,并使其成为默认的 selenium 浏览器。
于 2013-09-19T09:11:11.277 回答
0
我不知道您使用的是哪个网络驱动程序,但对于 watir-webdriver,您可以执行以下操作:
您可以使用以下 URL 中的代码确定要跳过的步骤中的浏览器。
http://watirwebdriver.com/determining-which-browser/
一旦确定它是 chrome,您就可以跳过该特定步骤。
于 2013-09-19T00:04:31.950 回答