如何在Selenium中迭代Excel中的单元格

时间:2014-12-09 11:12:33

标签: apache-poi

我正在使用selenium webdriver注册我的应用程序..

enter image description here

现在我想要使用用户名,密码,确认密码,电子邮件和电话号码的值。我已经使用for循环来迭代这个..但是当app增长时,字段会在同一页面上添加更多。我必须再次更改for循环中的限制值。

我可以使用Iterator检查一行,如果单元格为空,它应该停止并且应该控制testCase ..

任何人都可以让我知道如何使用Iterator ???

package com.xcha.selenium.utitlity;

import java.io.IOException;
import java.util.ArrayList;

import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

public class ReadExcel extends GlobalVariables {

    /**
     * @param args
     * @throws IOException
     */
    public static ArrayList readExcel(int rowcounter) throws IOException {

        XSSFWorkbook srcBook = new XSSFWorkbook("./prop.xlsx");
        XSSFSheet sourceSheet = srcBook.getSheetAt(0);
        int rownum = rowcounter;
        XSSFRow sourceRow = sourceSheet.getRow(rownum);
        int lastcellNum = sourceRow.getLastCellNum() - 1;
        int lastrowNum = sourceSheet.getLastRowNum() - 1;

        ArrayList<String> rowValues = new ArrayList<String>();

        for (int i = 0; i <= lastcellNum; i++) {
            String val = (sourceRow.getCell(i)).getRichStringCellValue()
                    .getString();
            System.out.println(val);
            rowValues.add(val);
        }

        System.out.println("Printing Arraylist");
        for (String strVal : rowValues) {
            System.out.println(strVal);
        }
        return rowValues;

    }
}

0 个答案:

没有答案