无法 运行 脚本,TestNG 中的参数错误,

Not able to Run script, Error with parameter in TestNG,

我正在尝试执行用于登录的脚本 webpage.Can any1 帮我解决 dis 问题吗?

我遇到以下错误:-

数据提供者试图传递 7 个参数,但方法
efgh.DataDriven#login需要2

public class DataDriven {

    public WebDriver driver;

    @Test(dataProvider ="testdata")
    public void login(String username, String password){

        driver=new ChromeDriver();
        driver.get("https://pos.lycamobile.es/Login/login.aspx?lang=ES");
        driver.findElement(By.name("UserName")).sendKeys(username);
        driver.findElement(By.name("Password")).sendKeys(password);
        driver.close();
    }

    @DataProvider(name = "testdata")
    public Object [] [] readExcel() throws BiffException, IOException {

       File f =new File("D:\Users\sarsiddi\Documents\DataSheet.xls");
       Workbook w = Workbook.getWorkbook(f);
       Sheet s= w.getSheet("lycadata");

       int rows = s.getRows();
       int columns = s.getColumns();
      // System.out.println(rows);
     // System.out.println(columns);   

        String inputData[] [] = new String [rows] [columns];
        for (int i=0; i<rows; i++){
            for (int j=0; j<columns; j++){
                Cell c = s.getCell(j, i);
                inputData [i][j] = c.getContents();
                //System.out.println(inputData[i][j]);
            }     
        }
        return inputData;
    }
}

您的数据提供者想要将所有 7 个参数都提供给测试,但登录只需要 2 个。

要解决此问题,有 2 个选项。

  1. 将所有 7 个参数添加到登录方法。目前您有用户名和密码

  2. Return 数据提供者只有 2 个参数。

如果您只打算在该测试中使用这 2 个参数,那么我会从 excel sheet 中删除其他参数。或者创建另一个 sheet 仅用于登录。