首页 > 解决方案 > adb 并行执行

问题描述

当我并行运行测试时,我在运行 adb 命令时遇到问题。测试在它捕获的第一个设备上执行 adb,而不连接其他设备。

testng.xml

<test name="test">
        <parameter name = "device" value="df74784"></parameter>
        <classes>
        <class 
          name="com.mrl.appium.testcases.SelendroidHomeScreenValidationTest">
        </class>
        </classes>
    </test>

<test name="test1">
        <parameter name = "device" value="qvs33434"></parameter>
        <classes>
        <class 
          name="com.mrl.appium.testcases.SelendroidHomeScreenValidationTest">
        </class>
        </classes>
    </test>

设置类:

public class BaseClass

@parameter("device")
@BeforeClass
public void setup(device){
capabilities.setCapability("udid",device)
ADB adb = new ADB(device)

亚行类:

public class ADB {
 private String ID;

    public ADB(String deviceID) {
        ID = deviceID;
    }
public void forceStopApp(String packageID) {
    command("adb -s " + ID + " shell am force-stop " + packageID);
}
 }

测试类:

public class test extends BaseClass {

@Test
public void forceClose(){

adb.forceStopApp();

}

如何在两台设备上运行测试?

我一直在考虑将每个设备放在另一个线程中,但不知道如何做到这一点。

标签: testngappium

解决方案


推荐阅读