使用Selenium 2设置用户代理

时间:2011-01-20 17:27:38

标签: ruby firefox selenium selenium-webdriver webautomation

我正在尝试通过Web自动化一个应用程序,如果从移动设备访问该应用程序的行为会有所不同。有没有人知道使用Selenium 2实现这一目标的最佳方法?

在理想的世界中,我想找到一种方法来配置用户代理,以便我们可以轻松地测试大量的排列。

1 个答案:

答案 0 :(得分:4)

查看here,它显示了在Firefox中设置用户代理字符串的代码:

FirefoxProfile profile = new FirefoxProfile();
profile.addAdditionalPreference("general.useragent.override", "some UA string");
WebDriver driver = new FirefoxDriver(profile);

转换为Ruby,它看起来像这样:

require 'selenium-webdriver'

profile = Selenium::WebDriver::Firefox::Profile.new
profile['general.useragent.override'] = 'some UA string'

driver = Selenium::WebDriver.for :firefox, :profile => profile

在导航到http://whatsmyuseragent.com的末尾添加一行表示它按预期工作。

然而,Selenium 2附带了iPhone和Android应用程序的驱动程序。我还没有尝试过它们,但看起来它们既可以在模拟器中运行,也可以在真实设备中运行。这些不适合你的原因吗?他们可能会更好地了解事物在设备上的外观。