【问题标题】:Different types of drivers - Automation不同类型的驱动程序 - 自动化
【发布时间】:2015-08-14 02:02:48
【问题描述】:

有不同类型的自动化驱动程序

我正在使用 appium 和 Selenium 自动化 iOS 原生应用程序。

我应该使用以下列表中的哪个驱动程序:

  1. 网络驱动程序
  2. RemoteWebDriver
  3. IOS驱动
  4. AppiumDriver

我将为此使用 PageObject Pattern。

如果有人有 iOS 原生应用(Appium+Selenium)的 PageObject 模式的示例项目。

请帮忙。

【问题讨论】:

标签: selenium automation native appium pageobjects


【解决方案1】:

您可以使用 AppiumDriver 或 IOSDriver。

  1. 在真机上通过 XCode 构建应用程序
  2. 然后运行Appium(你可以下载适用于Mac的UI应用)
  3. 在 BeforeMethod 中设置Capailities,您还需要指定设备 udid

如果你在真机上试试这个:

   @BeforeMethod
   public void setup(){

   DesiredCapabilities capabilities = new DesiredCapabilities();
   capabilities.setCapability(MobileCapabilityType.BROWSER_NAME, "");
   capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION, "7.1");
   capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "iPhone");
   capabilities.setCapability("udid", "your_ud_id_number");
   driver = new IOSDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);

 }

【讨论】:

    【解决方案2】:

    只是说清楚

    WebDriver是一个接口

    RemoteWebDriver 是 selenium 中 WebDriver 的通用实现

    AppiumDriver 是 Appium Javaclient 的一个抽象类,它扩展了 RemoteWebDriver[不是直接的]

    IOSDriver 是一个扩展 AppiumDriver 的实现

    由于您的测试侧重于 iOS 原生应用,请使用 IOSDriver,以便您获得 appium 为 IOS 实现的所有方法。

    顾名思义,PageObject 是一个模式你必须根据页面的行为和内容来实现。你可以看到参考herehere

    【讨论】:

    • 非常有用。谢谢马丹。你有没有使用过 appiumDriver 或 IOSDriver 并遵循 PageObject Pattern 的示例项目?
    猜你喜欢
    • 2010-12-07
    • 2015-01-18
    • 2020-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多