在selenium java中将数据动态写入excel

在selenium java中将数据动态写入excel,java,selenium,selenium-webdriver,automation,Java,Selenium,Selenium Webdriver,Automation,在使用多个参数执行测试用例之后,我将结果(通过/失败)传递到excel工作表中。共有6行,第一个结果失败进入所有6行(应仅进入第1行),第二个结果通过从第1行开始进入所有6行 获取数据代码 public static Object[][] getData() throws IOException{ int rowCount = ExcelUtil.getRowCount(); int colCount = ExcelUtil.getColumnCount();

在使用多个参数执行测试用例之后,我将结果(通过/失败)传递到excel工作表中。共有6行,第一个结果失败进入所有6行(应仅进入第1行),第二个结果通过从第1行开始进入所有6行

获取数据代码

public static Object[][] getData() throws IOException{

        int rowCount = ExcelUtil.getRowCount();
        int colCount = ExcelUtil.getColumnCount();

        Object[][] data = new Object[rowCount-1][colCount];

        for(int i=1; i<rowCount; i++)
        {
            for(int j=0; j<colCount; j++)
            {
                //Check cell is empty or not
                if (data[i-1][j] == null) {
                    data[i-1][j] = "";
                }
                //change values to string
                data[i-1][j] = ExcelUtil.setCellDataToString(i, j);
            }
        }
        return data;
    }
写入excel

public static void writeIntoExcel(String FilePath, String dataToWrite) throws IOException {
        int rowCount = ExcelUtil.getRowCount();
        int colCount = ExcelUtil.getColumnCount();

        try {
            for (int i = 1; i <= rowCount; i++) {
                shFile.getRow(i).createCell(colCount-1).setCellValue(dataToWrite); 
                fileOut = new FileOutputStream(filePath);
                wbFile.write(fileOut);
            }
            fileOut.close();
        } catch (Exception e) {
            System.out.println("Data is not entered into excel");
        }
    }
公共静态void writeIntoExcel(字符串文件路径,字符串数据写入)引发IOException{
int rowCount=ExcelUtil.getRowCount();
int colCount=ExcelUtil.getColumnCount();
试一试{

对于(inti=1;i您不应该为每个测试运行迭代行

公共静态无效writeIntoExcel


根据电子邮件和密码内容查找行号,然后在该行中创建结果单元格。

您正在执行
FileOutputStream fileOutput=newfileoutputstream(FilePath);
对于循环的每次迭代,每次覆盖以前的文件时,我都会删除
FileOutputStream fileOutput=new FileOutputStream(FilePath);
从循环中,数据不会传递到excel中,并且不会显示错误,只显示catch块displaying@prasad您还应该移动
fileOutput.close()
外部
for
循环。另外,向我们展示更新后的代码。我看到的问题是,当您从
登录
调用
writeIntoExcel
时,如何确保它将进入下一行?调试代码,并在每次点击
writeIntoExcel
@Fenio I placed fileOutput时观察它的值.close()外部循环仍然没有更改
public static void writeIntoExcel(String FilePath, String dataToWrite) throws IOException {
        int rowCount = ExcelUtil.getRowCount();
        int colCount = ExcelUtil.getColumnCount();

        try {
            for (int i = 1; i <= rowCount; i++) {
                shFile.getRow(i).createCell(colCount-1).setCellValue(dataToWrite); 
                fileOut = new FileOutputStream(filePath);
                wbFile.write(fileOut);
            }
            fileOut.close();
        } catch (Exception e) {
            System.out.println("Data is not entered into excel");
        }
    }