【发布时间】:2025-12-28 06:05:16
【问题描述】:
所以我试图在 Excel 电子表格中存储一个网络元素,例如 id,然后我想从工作表中调用 id 并将其放入测试中。
这行得通吗?理论上,技术知识较少的其他人可以在我的工作场所修改测试而无需编辑代码。
我正在使用以下代码从电子表格中读取数据并将单元格数据放入字符串中。
File src=new File("C:\\Users\\Admin\\Documents\\ExcelData\\TestData.xlsx");
FileInputStream fis=new FileInputStream(src);
XSSFWorkbook wb=new XSSFWorkbook(fis);
XSSFSheet sheet1=wb.getSheetAt(0);
String data0=sheet1.getRow(0).getCell(0).getStringCellValue();
例如,我遇到的困难是在测试时。
driver.findElement(By.name("q")).sendKeys("Java");
如果我用
替换它driver.findElement(By.name(data0).sendKeys("Java");
这行不通。
【问题讨论】:
-
应该,但这是最好的选择吗?请先做一些研究,添加您尝试过的代码并更具体。我认为您可以找到比 excel 更好的其他类型的文件。查看类似问题*.com/questions/15641666/…
-
感谢您抽出宝贵时间回复劳达。客户要求我专门使用电子表格来存储数据,然后他们将编辑单元格,例如单元格 C3 从“x”到“y”,以更改他们正在自动化的文本框。这个想法是代码将在测试中为 id 调用单元格 C3。抱歉,如果我的问题很愚蠢,但我真正使用 Java/Selenium 才几周。
-
你需要找到一个可以帮助你从 excel 中读取的库,检查 fire 库,看看哪个是最简单的,还可以检查 java 和 excel 的类似问题*.com/questions/1516144/…跨度>
-
我认为这不是一个好方法,因为在极少数情况下,ID 会在 HTML 中发生变化。虽然跟踪和测试中的任何更改都会使事情变得复杂,但这意味着您必须小心处理 excel 表并并排测试。
-
我一直在使用 Apache POI 读取电子表格。以下代码运行良好。文件 src=new File("C:\\Users\\Admin\\Documents\\ExcelData\\TestData.xlsx"); FileInputStream fis=new FileInputStream(src); XSSFWorkbook wb=new XSSFWorkbook(fis); XSSFSheet sheet1=wb.getSheetAt(0); String data0=sheet1.getRow(0).getCell(0).getStringCellValue();这会读取电子表格并将单元格中的数据存储在“data0”中