Я пытаюсь запустить два метода, принадлежащих одному и тому же классу, параллельно. Мой код запускает два отдельных браузера, но когда первый метод завершается, вместо того, чтобы убивать этот конкретный браузер, он убивает другой браузер.
Метод A - Браузер A - Скажите, что это занимает 20 секунд
Метод B - Браузер B - Скажите, что это занимает 40 секунд
Когда метод A выполнен, он убивает браузер B вместо браузера A.
Вот мой код:
public class AccountTest {
private WebDriver driver;
@BeforeMethod(alwaysRun=true)
public void initializeDriver() throws MalformedURLException {
driver = new FirefoxDriver();
driver.manage().deleteAllCookies();
driver.manage().window().maximize();
}
@Test(groups="Login")
public void loginTest() {
HomePage homePage = new HomePage(driver);
SignInPage signInPage = homePage.signIn();
signInPage.signIn("[email protected]", "abcd1234");
}
@Test(groups="Register")
public void registerTest() {
HomePage homePage = new HomePage(driver);
SignInPage signInPage = homePage.signIn();
RegisterPage registerPage = signInPage.register();
registerPage.register();
}
@AfterMethod(alwaysRun=true)
public void tearDown() {
driver.quit();
}
}
Вот мой testng.xml:
<suite name="Automation Suite" parallel="methods" verbose="10">
<test name="AccountTest">
<classes>
<class name="com.selenium.test.AccountTest"/>
</classes>
</test>
</suite>
Я не использую Grid в данный момент. Попытка заставить это работать на моем локальном компьютере, но я начну использовать Saucelabs для запуска параллельных тестов в будущем.
Вы хоть представляете, что случилось?
заранее спасибо