如何使用XML对象存储库进行Android并行测试执行

时间:2019-06-04 14:06:27

标签: xml object parallel-processing repository appium

我正在尝试在2个Android设备上并行执行我的Selenium测试代码。 对象存储库-XML 设备-Android Real设备 Appium版本-1.13 Java客户端-6.0.0

以并行模式运行测试时,应用程序将在两个设备上启动,此后,当我尝试访问element时,在能够访问和测试的第一个设备上继续进行,但在第二个设备appium中找不到元素。并说无法找到元素,导致第二个设备测试失败。

如果我将测试作为单个测试运行,则它将同时通过两个设备,但在并行模式下将失败。

在并行模式下从xml访问元素是否存在任何问题。

请提出如何在并行模式下使用对象存储库

1 个答案:

答案 0 :(得分:1)

很可能您没有将ThreadLocal Storage pattern应用于您的AndroidDriver实例。您应该将AndroidDriver存储在ThreadLocal下,如下所示:

ThreadLocal<AndroidDriver> driver = new ThreadLocal<>();
// initialize AndroidDriver normally
driver.set(new AndroidDriver(new URL("http://url-of-your-appium-server"),capabilities));

以及每当您需要引用AndroidDriver时,请执行以下操作:

driver.get().findElements....

更多信息: