【发布时间】:2021-06-02 11:39:04
【问题描述】:
使用 DataProvider 注释和 gradle 作为依赖管理器。
有问题:
- 要从excel文件中读取数据,需要下载jxl吗?
- 如果我尝试从 excel 文件中读取 url(在某个单元格中),是否会使用 driver.get 方法打开该 url?
【问题讨论】:
使用 DataProvider 注释和 gradle 作为依赖管理器。
有问题:
【问题讨论】:
你可以使用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)
【讨论】: