Мне нужно передать целочисленный массив в файл testng.xml, потому что я использую его в качестве файла конфигурации для запуска нескольких тестов по методу, который я написал, чтобы сделать его управляемым данными ,Как передать целочисленный массив testng.xml
этот метод:
@Test(groups="runnable")
@Parameters({"fName","lName","childAges"})
public void test(String firstName, String lastName, Integer[] childAges);
И в моем файле testng.xml:
<test name="WyomingComplex4Kids (Positive)">
<parameter name="fName" value="John"/>
<parameter name="lName" value="Johnson"/>
<parameter name="childAges" value="{10,7,3,6}"/>
<parameter name="server" value="https://example.server.com/app/someRoute"/>
<parameter name="port" value="443"/>
<groups>
<run>
<include name="runnable"/>
</run>
</groups>
<classes>
<class name = "com.somecompany.test.EligibilityComplex1"/>
</classes>
</test>
занимает в целочисленном массиве, который содержит ребенка возраст, это не похоже на работу. Я новичок в тестировании и тестировании в целом. Может ли кто-нибудь помочь мне здесь? Я слышал об использовании сложных объектов dataprovider tp pass (т. Е. Как массив или список), но я не могу понять, как это работает или как я могу использовать его в своем тесте. Так что любая помощь будет очень признательна, спасибо.
Можете ли вы привести мне пример? Как и в коде – mosawi
Вам просто нужно прочитать как строку, использовать метод split, а затем разобрать на Int каждое значение. Измените Integer [] на String в вашем методе тестирования - удалите {} из вашего значения параметра в xml. Используйте childAges.split (","), который даст в качестве массива, а затем цикл и parseInt. –