Как запустить тестовые методы параллельно в appium + testNG на основе параллельных = методов - PullRequest
0 голосов
/ 31 января 2019

Я пытаюсь запустить методы тестирования параллельно в Appium + testNG на разных устройствах.Это работает для меня, когда я запускаю методы тестирования параллельно на основе классов, то есть параллель = классы.

Но то же самое не работает, когда я пытаюсь запустить методы тестирования параллельно на основе методов, то есть параллель = методы.Я использую приведенный ниже код для параллельной работы.

 @BeforeMethod(alwaysRun = true)
    public void setdeviceName() throws Exception {
         if (ConfigUtil.getConfigDetails().split("::")[1].equalsIgnoreCase("device")) {
            synchronized (DeviceEmuList) {
                deviceName = DeviceEmuList.get(0);
                System.out.println("###########This is the device name###############" + deviceName);
                DeviceEmuList.remove(0);                
                port = Integer.parseInt((String) portList.get(0));              
                portList.remove(0);

                System.out.println("inside setup" + deviceName + port);

                driver = new DriverManager().getdriver(new Object[] { deviceName, port });

            }
        }

    }

    @AfterMethod(alwaysRun = true)
    public void takeSS() {
        driver.quit();
        DeviceEmuList.add(this.deviceName);
        portList.add(String.valueOf(this.port));
    }

<suite name="Mobile Regression" verbose="1" parallel="methods" thread-count="2">
    <test name="Regression Test Suite">
        <classes>
            <class name="com.automation.regression.AppTour" />
        </classes>
    </test>
</suite>

Когда я использую приведенный выше код, приложение запускается на первом устройстве, затем на втором устройстве, и все методы тестирования работают только навторое устройство.Ни один из методов тестирования не выполняется на первом устройстве.Похоже, что я запускаю тестовые методы последовательно на втором устройстве.

Та же логика работает хорошо, когда я создаю драйвер в @ BeforeClass.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...