2015-07-05 2 views
0

Как это @Factory аннотации работа, , когда нам нужно использовать @FactoryКак @Factory аннотации работа-TestNG

public class Factory1 
    { 

     @Factory 
     public Object[] testMy() 
     { 
      return new Object[]{new Login1()}; 

     } 


    } 

Пожалуйста, скажите мне, что ниже код делает,

return new Object[]{new Login1()} 
+0

Это 'return''sa нового массива' Object', содержащих 1 нового ' Login1' 'Объект'. –

ответ

1

Иногда мы можем необходимо запустить набор тестов с разными значениями данных. Для этого мы можем определить отдельный набор тестов внутри пакета в тестовом XML и протестировать требуемый сценарий. Проблема с этим подходом заключается в том, что если вы получите дополнительный набор данных, вам нужно будет переопределить тест. @Factory позволяет создавать тесты во время выполнения в зависимости от определенных наборов данных или условий.

Давайте возьмем вашего пример

@Factory 
      public Object[] testMy() 
      { 
       return new Object[]{new Login1()}; 

      } 

    public class login{ 

    public login(){ 

    syso('Login constructor called'); 

    } 

output : 

Login constructor called 

You can also pass arguments and call the constructor multiple times 

@Factory 
      public Object[] testMy() 
      { 
       return new Object[]{new Login1(1),new Login1(2)}; 

      } 

    public class login{ 

    public login(int num){ 

    syso('The number is '+num); 

    } 

output: 

The number is 1 

The number is 2 

Надеется, что это помогает you..Kindly получить обратно, если у вас есть какие-либо вопросы

+0

Спасибо @Vicky, например: return new Object [] {новый TestA (2), новый TestA (3), новый TestA (1)}; Но мой результат идет в порядке TestA (3), TestA (1) и TestA (2). Скажите, пожалуйста, как работает эта последовательность? –

+0

@Seetharaman может отправить ваш код, чтобы я мог более четко объяснить это, взяв его в качестве примера – Vicky

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