首页 > 解决方案 > java.lang.RuntimeException: java.lang.NullPointerException

问题描述

运行此测试时出现此错误。对于之前的测试文件,它运行完美。

@DataProvider(name = "login")
public Object[][] loginData() throws BiffException, IOException {
    Object[][] arrayObject = testDataXls.getExcelData(
            System.getProperty("user.dir") + "\\src\\test\\resources\\testdata\\Input_TestData.xls",
            this.getClass().getSimpleName());
    return arrayObject;
}

这里是我使用的 getExcelData

public String[][] getExcelData(String fileName, String sheetName)
        throws BiffException, IOException {
    String[][] arrayExcelData = null;

    FileInputStream fs = new FileInputStream(fileName);
    Workbook wb = Workbook.getWorkbook(fs);
    Sheet sh = wb.getSheet(sheetName);

    int totalNoOfCols = sh.getColumns();
    int totalNoOfRows = sh.getRows();

    arrayExcelData = new String[totalNoOfRows - 1][totalNoOfCols];

    for (int i = 1; i < totalNoOfRows; i++) {

        for (int j = 0; j < totalNoOfCols; j++) {
            arrayExcelData[i - 1][j] = sh.getCell(j, i).getContents();
        }

    }
    return arrayExcelData;
}

我不知道为什么它没有像以前的测试文件那样执行。错误突出显示在Object[][] arrayObject = testDataXls.getExcelData(

标签: javaselenium

解决方案


您的testDataXls实例可能为空。我建议你在调试模式下运行这个测试用例并在该行放置一个断点。然后检查testDataXls实例。


推荐阅读