2015-11-25 4 views
0

Я перехожу от JUnit к TestNG. TestNG просит конструктор нулевой арг, что я при условии, однако мой тестовый класс требует конструктора, где я прохожу некоторые конфигурации для теста:JUnit to TestNG Constructor with Args

@DataProvider(filename = "DataSheet.xlsx", sheet = "DigitalTestsMain") 

public class DigitalTests extends AbstractTests{ 

     @Inject 
     public DigitalTests(Logger log, WcConfigManager config, 
           WebSessionFactory sessionFactory) { 
      super(log, config, sessionFactory); 
     } 

     public DigitalTests() { 
     } 


     @Test 
     public void myAutomationTest() throws Exception { .... } 

Как TestNG использовать нулевую ARGS конструктор я делаю я передаю эти значения в , будет ли это в @Before?

+0

Не могли бы вы также показать нам «Абстрактные тесты»? – juherr

+0

Включена ли конфигурация для всех тестов в классе? –

+0

Да, это так. Мне просто нужен пример того, как сделано в конструкторе с аргументами. – userMod2

ответ

0

TestNG поддерживает @Inject from Guice, но я никогда не пробовал его на конструкторе. Вы должны попробовать, добавив соответствующий класс @Guice.

Factories - это метод, позволяющий передавать параметры для проверки конструктора.

В зависимости от вашего AbstractTests, возможно, @BeforeX/AfterX будет лучшим решением.

+0

AbstractTests - довольно длинный файл, что именно вам нужно знать. BeforeX звучит привлекательно, она будет работать так: '@BeforeTest \t \t общественности недействительным doBeforeSuite() { \t \t журнал Logger = super.getLog(); \t \t WcConfigManager config = super.getConfig(); \t \t WebSessionFactory sessionFactory = super.getSessionFactory(); \t \t} ' – userMod2

+0

Мне нужно понять, почему суперкласс имеет параметры конструктора, и если их можно удалить. И будьте осторожны, '@ BeforeTest' из JUnit =>' @ BeforeMethod' TestNG. – juherr

+0

Требуется - он обрабатывает такие вещи, как успехи и неудачи протоколирования, доказывая общие используемые функции и логику обработки @DataProvider в начале каждого тестового класса. – userMod2