Как запустить несколько тестов (@test) в одном сеансе - PullRequest
0 голосов
/ 03 мая 2018

Для приведенного ниже кода я не смог запустить все тесты в одном сеансе.

Выполнены шаги для запуска ниже кода: 1. Щелкните правой кнопкой мыши имя класса -> Run As -> TestNg test. Браузерный сеанс закрыт для каждого сеанса. здесь я хочу выполнить все тесты, не закрывая сеанс браузера.

@BeforeClass
@Parameters({"browser", "pdpurl"})
public void setData(@Optional("")String browser, @Optional("")String pdpurl) {
    browserName = browser.isEmpty() ? "chrome" : browser;
    url = pdpurl.isEmpty() ? propDatas.getProperty(PDP_URL) : pdpurl; 
}

@Test
@Parameters("frame")
public void test1(@Optional("")String frame){
    new SendAndClaim(driver)
    .clickGiftNow()
    .switchFrame(frame);
}   

@Test(dependsOnMethods="test1")
public void test2() {
    new SendAndClaim(driver)
    .enterName()
    .enterMail()
    .enterFromName()
    .enterFromMail()
    .clickPayment();
}


public class Company extends GenericWrappers
public String browserName;
public String url;
public String dataSheetName;

@BeforeSuite
public void beforeSuite(){
}

@BeforeTest
public void beforeTest(){
    loadObjects();
    loadDatas();
}
@BeforeMethod
public void beforeMethod(){
    invokeApp(browserName, url);
}

@AfterSuite
public void afterSuite(){
}

@AfterTest
public void afterTest(){
    unloadObjects();
    unloadDatas();
}

@AfterMethod
public void afterMethod(){
    closeAllBrowsers();     
}

1 Ответ

0 голосов
/ 03 мая 2018

Если это ваш метод, вызовите метод closeAllBrowsers(); в методе @AfterSuite. Таким образом, он будет выполнен после завершения всех тестовых случаев.

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