1

我是移动应用程序自动化测试的新手,并且有要求将设备与服务器/控制台连接并从网络远程控制连接的设备。我如何实现这一目标。有什么建议么?我为原生应用尝试了 selendroid,但我不知道如何同时使用网络和设备进行测试。

例如:我的应用程序,例如“Airdroid”

4

1 回答 1

1

当您启动 Appium 服务器时,它会开始侦听特定端口。在您的测试代码中,您可以通过传入指向 Appium 运行地址的 URL 对象来初始化 AndroidDriver 对象。

例如,如果 Appium 在 www.example.com 的 4723 端口上运行,那么我在客户端的测试代码应该有以下行:

AndroidDriver driver = new AndroidDriver(new URL("http://www.example.com:4723/wd/hub"),
   capabilities);

能力对象是一个 DesiredCapabilities 对象,它列出了 Appium 服务器的参数和标志。初始化 AndroidDriver 对象后,您可以在驱动程序上调用 AndroidDriver 的方法来与运行连接到远程服务器的应用程序的设备进行交互。

我还假设您已经为 AndroidDriver 类下载了 Appium Java 客户端,但如果您还没有,您可以将以下内容添加到 Maven 项目的 pom.xml 中:

<dependency>
  <groupId>io.appium</groupId>
  <artifactId>java-client</artifactId>
  <version>2.1.0</version>
</dependency>

以下是 Java 客户端和 Appium 文档的链接,以供将来参考:

http://appium.github.io/java-client/io/appium/java_client/android/AndroidDriver.html
http://appium.io/slate/en/master/?java#appium-server-capabilities
https:// /github.com/appium/java-client/blob/master/README.md

还要确保在您拥有的任何防火墙中转发您的端口,以便连接请求可以到达 Appium。

于 2015-01-13T22:00:04.257 回答