首页 文章

如何在桌面浏览器上使用webdriver移动网络

提问于
浏览
2

我使用selenium webdriver进行AUT(应用程序测试)的功能测试自动化 . AUT是响应式网络,我几乎完成了桌面浏览器的不同测试用例 .

现在相同的测试用例也适用于移动浏览器,因为可以从移动浏览器访问AUT . 因为当我们在移动浏览器中打开时它是响应式web,所以UI具有一些不同的表示 . 所以我们也需要为移动浏览器运行这些测试 . 对于使用safari浏览器的用户代理功能的手动测试团队

Safari浏览器菜单 - >开发 - >用户代理

它满足了我们对手动测试的需求 .

如果我们可以通过自动化执行类似的操作,即在桌面浏览器上使用某些twik运行测试,那么它也被认为是完成移动Web自动化 . 我的问题是如何使用web驱动程序来修改 Headers . 网址是相同的,因为只有一个网络应用程序 .

我的自动化测试使用FirefoxDriver和chromeDriver在firefox上正常运行 . 两种浏览器都有类似的开发工具,但我无法通过自动化来利用它 .

我们使用的是硒2.53.0 . 我们的IVY文件具有以下与selenium相关的依赖关系 .

<dependency org="org.seleniumhq.selenium" name="selenium-remote-driver" rev="2.53.0"/>
<dependency org="org.seleniumhq.selenium" name="selenium-java" rev="2.53.0"/>

任何人都可以提供建议并帮助我如何运行我的测试来实现它以及我需要做的相关代码更改是什么?

谢谢 .

1 回答

  • 1

    Google Chrome提供了一种在实例化驱动程序时模拟移动设备的机制,请参阅完整文档here .

    例:

    Map<String, String> mobileEmulation = new HashMap<String, String>();
    mobileEmulation.put("deviceName", "Google Nexus 5");
    Map<String, Object> chromeOptions = new HashMap<String, Object>();
    chromeOptions.put("mobileEmulation", mobileEmulation);
    DesiredCapabilities capabilities = DesiredCapabilities.chrome();
    capabilities.setCapability(ChromeOptions.CAPABILITY, chromeOptions);
    WebDriver driver = new ChromeDriver(capabilities);
    

相关问题