Я учусь использовать TestNG для IntelliJ IDEA 9.
Насколько я понимаю, один из способов поместить тест в группу с именем name
— это аннотировать его @Test(group = "name")
. Чтобы запустить метод перед каждым тестом, аннотируйте его @BeforeMethod
.
В моей тестовой настройке я хочу, чтобы метод запускался перед каждым тестом только в определенной группе. Таким образом, есть метод beforeA
, который запускается перед каждым тестом в группе A
, метод beforeB
, который запускается перед каждым B
тестом, и так далее.
Пример кода:
public class TestExample
{
@BeforeMethod(groups = "A")
public void beforeA()
{
System.out.println("before A");
}
@BeforeMethod(groups = "B")
public void beforeB()
{
System.out.println("before B");
}
@Test(groups = "A")
public void A1()
{
System.out.println("test A1");
}
@Test(groups = "A")
public void A2()
{
System.out.println("test A2");
}
@Test(groups = "B")
public void B1()
{
System.out.println("test B1");
}
@Test(groups = "B")
public void B2()
{
System.out.println("test B2");
}
}
Я ожидаю вывод, как
before A
test A1
before A
test A2
before B
test B1
before B
test B2
но я получаю следующее:
before A
before B
before A
before B
test A2
before A
before B
before A
before B
test B1
===============================================
test B2
===============================================
Custom suite
Total tests run: 4, Failures: 0, Skips: 0
===============================================
И IntelliJ IDEA выделил все мои аннотации сообщением «Группа A не определена» или «Группа B не определена».
Что я делаю неправильно?