параллельное выполнение сетки селена в том же браузере - PullRequest
0 голосов
/ 23 марта 2019

Я использую Селеновую сетку и хочу, чтобы мои тесты запускались параллельно в одном браузере, например: Chrome

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

Пожалуйста, помогите мне:)

public WebDriver createDriverGrid() throws MalformedURLException {
        String hubUrl = "http://localhost:4446/wd/hub";
        ChromeOptions capabilities = new ChromeOptions();
        capabilities.setCapability(CapabilityType.BROWSER_NAME, "chrome");
        driver.set(new RemoteWebDriver(new URL(hubUrl), capabilities));
        return driver.get();
    }

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >

<suite name="GoogleTestSuite" verbose="2" parallel="tests" thread-count="2" preserve-order="true">


    <test name="GoogleTest-CH" parallel="true">
    <!--<parameter name="browser" value="chrome"></parameter>-->
     <classes>
        <class name="com.herokuapp.theinternet.tests.GoogleTests" />
     </classes>
   </test>

</suite>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >

<suite name="PositiveTestSuite" verbose="2" parallel="tests" thread-count="2" preserve-order="true">
    <test name="PositiveTest-CH" parallel="true">
     <classes>
        <class name="com.herokuapp.theinternet.tests.PositiveTests" />
         <!--<class name="com.herokuapp.theinternet.tests.PositiveTests" />-->
     </classes>
   </test>
</suite>

Ответы [ 2 ]

0 голосов
/ 25 марта 2019

Вы можете достичь этого, используя конвейеры jenkins, без необходимости изменять исходный код

0 голосов
/ 25 марта 2019

Если вы хотите запустить тест параллельно, тогда вы напишите дважды свой метод теста. Согласно вашему TestNG.xml, вы должны написать parallel = "tests" thread-count = "2" , что означает, что есть два метода теста, которые мы хотим выполнить параллельно.

Пожалуйста, замените ваш XML с кодом ниже:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="PositiveTestSuite" parallel="tests" thread-count="2">

    <test name="PositiveTest-CH">
     <classes>
        <class name="com.herokuapp.theinternet.tests.PositiveTests" />
     </classes>
   </test>

   <test name="PositiveTest-CH1">
     <classes>
        <class name="com.herokuapp.theinternet.tests.PositiveTests" />
     </classes>
   </test>

</suite>

Попробуйте, это будет работать нормально.

...