簡體   English   中英

我們如何傳遞比使用DataProvider所需的方法更少的參數?

[英]How can we pass less parameters than the method require us to do using DataProvider?

我們如何傳遞比使用DataProvider所需的方法更少的參數?

我將嘗試說明一個例子,我創建了一個名為fetchData(string objectype,string object value,String locatortype,String locatorValue,String message)的方法;

我從Excel文件中檢索數據,在它的第一行中,我僅傳遞了兩個參數,而不是使用DataProvider批注傳遞所有五個參數,僅在第四行中,我傳遞了Method要求的所有參數。任何錯誤,都可以正常工作。

我的理解是,您不能傳遞比方法要求的參數少的參數,顯然可以使用DataProvider注釋,但是如何?

className.perform(row.getCell(1), row.getCell(2),row.getCell(3), row.getCell(4));

ExcelFile第一行的第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個參數,只是objectNameobjectType作為空字符串傳遞。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM