【发布时间】:2018-05-28 16:39:29
【问题描述】:
我正在尝试在不同的 Android 设备上并行运行我的自动化套件(使用 Selenium Webdriver (Java) + TestNG + Maven 实现)。这是我在 xml 中的代码:
<test name="Test1">
<parameter name="deviceName_" value="simulator1"/>
<parameter name="port_" value="4723"/>
<classes>
<class name="tests.TotoTests">
<methods>
<include name=".*" />
</methods>
</class>
</classes>
</test>
<!--test name="Test2">
<parameter name="deviceName_" value="simulator2"/>
<parameter name="port_" value="4725"/>
<classes>
<class name="tests.TotoTests">
<methods>
<include name=".*" />
</methods>
</class>
</classes>
</test-->
在 TotoTests 类中,我有 20 个测试。他们每个人都有注释@Test。当我运行 xml 时,两个设备并行运行 TotoTests 类。所以我的 device1(simulator1) 运行了 20 个测试,我的 device2 (simulator2) 也运行了 20 个测试。
但我想要的是,simulator1 运行 TotoTests 中的第一个测试,simulator2 开始运行 TotoTests 中的第二个测试。当一台设备完成后,它将运行 TotoTests 中的第三个测试。然后当其中一台设备完成后,它将运行第 4 次测试。所以要运行 20 个测试,我只需要一半的时间。因为每台设备只会运行 10 次测试,或 9 次测试,或 11 次测试....而不是 20 次测试。
我该怎么做?
【问题讨论】:
-
这个话题已经在这里提出stackoverflow.com/questions/47809529/…
标签: selenium automated-tests testng appium parallel-testing