数据提供者的Java参数问题

我想要使​​用Excel的多列,并将其作为parameter passing给Java方法。 但是,我不能使用数据提供程序添加两个以上的参数。 现在有任何其他的方式,通过我可以有多个参数,或者我可以把它作为一个对象。 我想从表中定义为列填充多个数据。 这是抛出错误,“数据提供商正试图传递5个参数,但方法com.indracarelis.testscript.admin.NewOrder#CreateNewOrder需要2”。 哪个是它用于一个方法的两个参数?

我假设你已经编写了从@DataProvider获取Excel数据的代码

您可以创build一个包含该对的HashMap并将其传递给testing。 下面的伪码:

 @DataProvider(name ="abc") public static Object[][] getData() { //code to read excel file goes here HashMap<String, String> data = new HashMap(); data.put("Column1","data1"); data.put("Column2","data2"); data.put("Column3","data3"); return new Object[] {data}; } @Test(dataProvider="abc", dataProviderClass=TestClass.class) public void test(HashMap<String, String> data) { //use data here }