TestNG с использованием разных параметров

У меня есть 100 тестовых методов, разбросанных по 14 классам Java (цифры приведены только для примера). Теперь я хочу сгруппировать 3 метода из 1-го класса, 4 из второго класса и так далее в одну @group.

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

Теперь в своем xml файле я хочу указать один тег, который будет запускать все методы в группе несколько раз, каждый раз с разными глобальными и функциональными параметрами.

Обратите внимание, что я не смогу использовать @Dataprovider, потому что с его помощью я указываю только параметры, необходимые моим методам ...... я не смогу изменить глобальные параметры в поставщике данных .....

Любая помощь будет оценена.

Спасибо!


person Amulya Yadav    schedule 16.07.2012    source источник


Ответы (1)


Вы можете вводить данные в суперконструктор, например это

--------- РЕДАКТИРОВАТЬ 1 ------------

Вы можете получить данные через ITestContext.

подобно

@Test
public void test(ITestContext context){
    String para = context.getCurrentXmlTest().getParameter("para");
}

но это только для использования со строками.

Возможно, вы можете использовать описанную настройку DataProvider/Factory в сочетании с этим ITestContext и внедрить класс-оболочку.

Я отредактирую свой ответ, если у вас есть дополнительные вопросы

person Franz Ebner    schedule 16.07.2012
comment
я хочу, чтобы мои тестовые данные были отделены от моих тестовых методов ..... потому что это хороший дизайн, а xml намного легче читать (я действительно обрабатываю очень большое количество тестовых случаев ..... так что нет другого пути в ТестНГ? - person Amulya Yadav; 17.07.2012