我们如何传递比方法要求我们使用 DataProvider 执行的参数更少的参数?
我将尝试解释,假设我创建了一个名为 fetchData 的方法(字符串对象,字符串对象值,字符串定位器类型,字符串定位器值,字符串消息(;
我正在从 Excel 文件中检索数据,在其第一行,我只传递两个参数,而不是所有五个参数都使用 DataProvider 注释,仅在第四行,我根据方法要求传递所有参数。我没有遇到任何错误,它工作得很好。
我的理解是,你不能传递比方法要求你做的更少的参数,显然可以使用DataProvider注释,但是如何呢?
className.perform(row.getCell(1), row.getCell(2),row.getCell(3), row.getCell(4));
Excel文件中第一行的 2 列和 3 列中没有数据
perform(GOTOURl,'','',URL)
public static void perform(String operation, String objectName, String objectType, String val)
{
System.out.println("");
switch (operation.toUpperCase())
{
case "CLICK":
driver.findElement(this.getObject(p, objectName, objectType)).click();
break;
case "SETTEXT":
driver.findElement(this.getObject(p, objectName, objectType)).sendKeys(val);
break;
case "GOTOURL":
driver.get(p.getProperty(val));
break;
case "GETTEXT":
driver.findElement(this.getObject(p, objectName, objectType)).getText();
break;
default:
break;
}
}
您仍在传递所有 4 个参数,只是objectName
和objectType
作为空字符串传递。