TestNG - Тест группы
В этом уроке мы покажем вам, как проводить групповое тестирование в TestNG.
1. Группы по методам
Просмотрите пример тестовой группы.
-
runSelenium () и runSelenium1 () относятся к группе
selenium-test. -
testConnectOracle () и testConnectMsSQL () принадлежат к группе
database. -
runFinal () будет выполнен, если группы
selenium-testиdatabaseпереданы.
TestGroup.java
package com.example.testng.examples.group;
import org.testng.annotations.AfterGroups;
import org.testng.annotations.BeforeGroups;
import org.testng.annotations.Test;
public class TestGroup {
@BeforeGroups("database")
public void setupDB() {
System.out.println("setupDB()");
}
@AfterGroups("database")
public void cleanDB() {
System.out.println("cleanDB()");
}
@Test(groups= "selenium-test")
public void runSelenium() {
System.out.println("runSelenium()");
}
@Test(groups= "selenium-test")
public void runSelenium1() {
System.out.println("runSelenium()1");
}
@Test(groups = "database")
public void testConnectOracle() {
System.out.println("testConnectOracle()");
}
@Test(groups = "database")
public void testConnectMsSQL() {
System.out.println("testConnectMsSQL");
}
@Test(dependsOnGroups = {"database","selenium-test"})
public void runFinal() {
System.out.println("runFinal");
}
}
Выход
//group = selenium-test runSelenium() runSelenium()1 //group = database setupDB() testConnectMsSQL testConnectOracle() cleanDB() //dependsOnGroups = database, selenium-test runFinal PASSED: runSelenium PASSED: runSelenium1 PASSED: testConnectMsSQL PASSED: testConnectOracle PASSED: runFinal
2. Группы по классу
«Группа» может применяться на уровне класса. В приведенном ниже примере каждый общедоступный метод этого класса TestSelenium принадлежит группеselenium-test.
TestSelenium.java
package com.example.testng.examples.group;
import org.testng.annotations.Test;
@Test(groups= "selenium-test")
public class TestSelenium {
public void runSelenium() {
System.out.println("runSelenium()");
}
public void runSelenium1() {
System.out.println("runSelenium()1");
}
}
Создайте файл XML для запуска 2 тестовых классов.
testng.xml
Выход
//test name = final runSelenium() runSelenium()1 setupDB() testConnectMsSQL testConnectOracle() cleanDB() runFinal //test name = selenium runSelenium() runSelenium()1 =============================================== TestAll Total tests run: 7, Failures: 0, Skips: 0 ===============================================
3. Разные Примеры
3.1 A test method can belong to multiple groups.
@Test(groups = {"mysql","database"})
public void testConnectMsSQL() {
System.out.println("testConnectMsSQL");
}
3.2 The above result is executed via Eclipse TestNG Plugin.
