У меня есть файл testNG.xml, как показано ниже:
<suite name="example suite 1" >
<test name = "exampletest2" preserve-order="true" >
<classes>
<class name = "sprint0.class1" />
<class name = "sprint0.class2" />
</classes>
</test>
</suite>
каждый класс имеет несколько тестовых методов, в которых установлен приоритет:
Пример: class1
public class class1 extends TestSetup {
@Test(priority = 1, dataProvider = "TerminateEmpData" , enabled = true )
public void test1class1 (String searchKey, String ChangedKey) {
/* code */
}
@Test(priority = 2, dataProvider = "TerminateEmpData" , enabled = true )
public void test2class1 (String searchKey, String ChangedKey) {
/* code */
}
@Test(priority = 3, dataProvider = "TerminateEmpData" , enabled = true )
public void test3class1 (String searchKey, String ChangedKey) {
/* code */
}
}
Другой класс2, как показано ниже:
public class class2 extends TestSetup {
@Test(priority = 1, dataProvider = "TerminateEmpData" , enabled = true )
public void test1class2 (String searchKey, String ChangedKey) {
/* code */
}
@Test(priority = 2, dataProvider = "TerminateEmpData" , enabled = true )
public void test2class2 (String searchKey, String ChangedKey) {
/* code */
}
}
После того, как я запустил файл testng.xml выше, исполняется только метод с приоритетом = 1.
Я хотел бы понять, что я здесь не так делаю?
Также я хотел бы упомянуть в классе TestSetup,
** @ BeforeMethod, я вызываю браузер и захожу в приложение
и
@ AfterMethod, я делаю демонтаж и снимаю скриншот для теста. **
Я хотел бы понять, что я делаю здесь неправильно, так как я не могу запустить все мои методы.
Альтернатива, которую я создал, - создать набор тестов для отдельного класса, а затем вызвать все тестовые наборы и запустить в отдельном testng.xml, который отлично работает.
Есть предложения?