【问题标题】:Selenium Java: How to read data from Excel with annotationsSelenium Java:如何使用注释从 Excel 中读取数据
【发布时间】:2021-06-02 11:39:04
【问题描述】:

使用 DataProvider 注释和 gradle 作为依赖管理器。

有问题:

  1. 要从excel文件中读取数据,需要下载jxl吗?
  2. 如果我尝试从 excel 文件中读取 url(在某个单元格中),是否会使用 driver.get 方法打开该 url?

【问题讨论】:

    标签: java excel selenium


    【解决方案1】:

    你可以使用apache poi库来读取xls文件..maven依赖和jar文件在这里..

    https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml/3.9

    示例代码:

    假设您已将 xls 放在项目文件夹中。如果没有给出 xlsx 的完整路径。

    您可以将 sheetName 和您想读取的行传递给此方法。或者您可以通过引用此方法创建自己的方法。

    public static HashMap<String, String> ReadExcel(String SheetName, int Rownumber) throws IOException {
            // Define the File Folder
            XSSFWorkbook sourceBook = new XSSFWorkbook("./MasterSheet.xlsx");
            //Which sheet you want to read (Sheet Name)
            XSSFSheet sourceSheet = sourceBook.getSheet(SheetName);
            //int lastRowNumber = sourceSheet.getLastRowNum();
            int lastColumnNumber = sourceSheet.getRow(0).getLastCellNum() - 1;
            //Read the headerRow
            XSSFRow headerRow = sourceSheet.getRow(0);
            HashMap<String, String> ValuesMap = new HashMap<String, String>();
            for (int i = 0; i <= lastColumnNumber; i++) {
                ValuesMap.put(headerRow.getCell(i).toString(), sourceSheet.getRow(Rownumber).getCell(i).toString());
                //System.out.println(sourceSheet.getRow(Rownumber).getCell(i).toString());
            }
            //Close the workbook 
            sourceBook.close();
            return ValuesMap;
        }
    

    您可以使用 K,V 对的返回值并读取类似..

    HashMap<String, String> queryset = utilities.ReadExcel("CardDetails", 1);
    String urlvalue = queryset.get(url).toString();
    driver.get(urlvalue)
    

    【讨论】:

    • 嗨,因为我使用的是 Gradle,Apache poi 库可以工作吗?
    • 谢谢陈!
    • 因为我使用的是 Gradle,Apache poi 库可以工作吗?
    • 是的。它会起作用..如果你打开给定的链接,你可以从选项卡选项中获得 gradle..
    • 如果它满足您的需求,请接受答案
    猜你喜欢
    • 1970-01-01
    • 2018-04-11
    • 2013-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-02
    • 2016-03-20
    • 1970-01-01
    相关资源
    最近更新 更多