Selenium - 在电子表格中存储网络元素ID,在测试中从电子表格中调用id?

时间:2016-11-09 09:55:07

标签: java excel selenium

所以我试图在excel电子表格中存储id等web元素,然后我想从工作表中调用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” 的);

这不起作用。

1 个答案:

答案 0 :(得分:0)

是的,您可以按照要求从外部工作表中获取输入数据。 这可以使用Apache POI Jars支持来完成。 希望你用Java编写代码。 以下链接为您提供了足够的代码。 - > Apache POI Examples

从Excel读取数据的代码。

File file= new File(PATH);
FileInputStream inputStream = new FileInputStream(file);
Workbook workbook =new XSSFWorkbook(inputStream);
Sheet sheet = workbook.getSheet(SHEETNAME);
String[][] number=new String[10][10]; // temp array
for(int i=0;i<rowCount+1;i++)
    {
        Row row=s.getRow(i);        
        for(int j=0;j<=row.getLastCellNum();j++)
        {
             number[i][j]=  row.getCell(j).toString(); // works only for cells of string type
         }
    }

然后从数字数组中获取数据。