Я хочу параметризовать группы в testng.xml и потом получить данные с DataProvider
.
Я хочу запустить метагруппу и группу, входящую в метагруппу, но с другим параметром. Такое впечатление, что если группа входит в метагруппу, второй раз она не запускается. Мой вариант использования — веб-сайт с разными ролями пользователей (супергруппа должна тестироваться с точки зрения администратора, группа 1 должна тестироваться только как посетитель).
<suite name="Suite1" verbose="1" parallel="false"> <test name="Test1"> <groups> <define name="supergroup"> <include name="group1" /> <include name="group2" /> </define> <run> <include name="supergroup"> <parameter name="config" value="super" /> </include> <include name="group1"> <parameter name="config" value="first" /> </include> </run> </groups> <packages> <package name="com.company.test.*" /> </packages> </test> </suite>
Я хочу получить параметры с помощью DataProvider и ввести их в тестовые классы. ITestContext, по-видимому, не предоставляет возможности доступа к параметрам, определенным ниже уровня тестирования.
@DataProvider(name = "test", parallel = false) public static Object[][] testDataProvider(ITestContext context){ String config = context.getCurrentXmlTest().getParameter("config"); Object[][] back = new Object[1][1]; back[0] = new Object[] { config }; return back; }