我们可以使用常见的数据提供商方法用于硒中的各种测试用例吗?我可以将Excel路径和表格名称传递给普通数据提供商



我有多个测试案例命名为classAtest1,classatest2,classAtest1等现在,我正在上每个班级,我都必须编编写数据提供商方法但是我只想写一个数据提供商方法,我能够通过Excel,Path和Sheet Name

将其与所有类一起使用
**@DataProvider(name="getData")** // supplying data for a test method.
public Object[][] getData() throws IOException 
{
        FileInputStream fis = new FileInputStream("**Z:\MAANTTIANS\folder\Excel Sheets\QestionBank.xlsx**"); // Your .xlsx file name along with path
        excelWorkbook = new XSSFWorkbook(fis);
        // Read sheet inside the workbook by its name
        excelSheet = excelWorkbook.getSheet("**MTFQuestion**"); //Your sheet name
        // Find number of rows in excel file
        System.out.println("First Row Number/index:"+ excelSheet.getFirstRowNum() + " *** Last Row Number/index:"+ excelSheet.getLastRowNum());
        int rowCount = excelSheet.getLastRowNum() - excelSheet.getFirstRowNum()+1;
        int colCount = excelSheet.getRow(0).getLastCellNum();
        System.out.println("Row Count is: " + rowCount+ " *** Column count is: " + colCount);
        Object data[][] = new Object[rowCount-1][colCount];
        for (int rNum = 2; rNum <= rowCount; rNum++) 
        {
            for (int cNum = 0; cNum < colCount; cNum++) 
            {
                data[rNum - 2][cNum] = getCellData("MTFQuestion", cNum, rNum); //Your sheet name
            }
            System.out.println();
        }
        return data; 
    }
}

是的,我们可以使用。您可以将DataProvider名称传递给每个@Test方法,TestNG将使用字母顺序执行每个测试用例。

最新更新