2013-08-27 2 views
1

Есть ли способ получить имя группы, которая в настоящее время выполняется?TestNG: Как получить текущую выполненную группу

Я пробовал:

@BeforeMethod 
public void beforeMethod(ITestContext context) { 
    groups = context.getCurrentXmlTest().getIncludedGroups(); 
} 

, но это дает мне все группы, которые поддерживают текущий метод работает, а не тока один выполняются.

+0

Я не верю, что это возможно. Если бы я должен был выполнять тесты на основе класса, в котором они находятся, или просто выполнить один метод, что бы вернуть эту функцию? –

+0

null так как это не применимо? Когда вы выполняете группы, должно быть указано, что где-то в какой группе выполняется кадр, не так ли? – kfox

ответ

0

Если вы хотите знать, первое название группы, к которой выполнение @Test метода принадлежит:

@BeforeMethod 
    public void beforeMethod(Method method){ 
     Test testClass = method.getAnnotation(Test.class); 
     System.out.println(testClass.groups()[0]); 
    } 

Если вы хотите знать все группы имя, к которому выполнение @Test метода принадлежит:

@BeforeMethod 
    public void beforeMethod(Method method){ 
     Test testClass = method.getAnnotation(Test.class); 

     for (int i = 0; i < testClass.groups().length; i++) { 
      System.out.println(testClass.groups()[i]); 
     } 
    } 

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

+0

Этот вопрос три года. Не применимо больше. В любом случае вы не ответили на исходный вопрос. Я хотел знать, какая группа в настоящее время выполняется, а не все группы или первая группа. – kfox

+0

@kfox Я вижу, что вы сказали Не применимо, но нашли ли вы решение? Я также хотел бы знать, как это сделать. – mancocapac

+0

Извините за поздний комментарий. Думаю, что я нашел способ сделать это, но это было 4 года назад, и я больше не работаю в этой компании и не имею доступа к исходному коду. Удачи в вашем поиске! – kfox

Смежные вопросы