Как использовать теги testng для дыма, регрессионные тесты

У меня есть несколько методов тестирования, и мне нужно выбрать некоторые из них как тесты на дым, а другие - регрессионные. Как я могу сделать условие / зависимость в Testng selenium, так что тесты дыма будут запускаться сначала как группа. И я могу настроить различные задания Bamboo для регрессионных тестов, и они будут запущены, только если пройдена группа по тестированию дыма.

Вот мои тесты:

@Test(priority=1)
public void test_1(){
----}

@Test(priority=2)
public void test_2(){
----}

@Test(priority=3)
public void test_3(){
----}

@Test(priority=4)
public void test_4(){
----}

@Test(priority=5)
public void test_5(){
----}

Здесь test_1 - test_3 - тесты дыма. Так что если они пройдут, другие будут казнены. Как я могу это сделать?

1 ответ

Вы можете достичь этого, используя аннотации groups и disabledOnGroups. Примеры в документации довольно хороши. В принципе, вы можете попробовать что-то вроде этого:

@Test (groups = {"smokeTest"}, priority=1)
public void test_1() {...}

// add the same annotations for test_2 and test_3

@Test (groups = {"regressionTest"}, dependsOnGroups = {"smokeTest"}, priority=4) 
public void test_4() {...}

@Test (groups = {"regressionTest"}, dependsOnGroups = {"smokeTest"}, priority=5) 
public void test_5() {...}

Таким образом, тесты 4 и 5 будут выполнены, только если тесты 1,2 и 3 пройдены. Если вам нужен более детальный контроль, вы можете использовать testng.xml для настройки тестовых пакетов и т. Д.

Что касается настройки заданий в Bamboo, это зависит от используемого вами инструмента сборки. Этот пост в сообществе Atlassian может быть полезен для вас.

Надеюсь это поможет.

Другие вопросы по тегам