我创建了一个excel表,其中包含用户名和密码字段的Xpath。
我从excel中检索了这些值并将它们存储在String变量
中从Excel工作表中检索的xapth值
String xpath = xpath.getContents();
我希望将以上值发送到WebElement电子邮件下面,而不是硬编码的xpath
WebElement email = driver.findElement(By.xpath("//input[@name='j_username']"));
如何将xapth值从string变量发送到WebElement语句?
答案 0 :(得分:1)
假设您有一个xpath,例如单元格0 0中Excel表格中的//div[@class='abc']/input
然后首先需要读取该单元格并将其值存储在字符串中。
获取字符串值的方法是
String usernameXpath = sheet.getRow(0).getCell(0).getStringCellValue();
然后传递给:
WebElement email = driver.findElement(By.xpath(usernameXpath));
以下是基于已知单元格从Excel读取数据的示例代码
public class ReadExcel
{
FileInputStream fis;
XSSFWorkbook workbook;
XSSFSheet sheet;
public ReadExcel() throws IOException
{
// Read Excel File
fis = new FileInputStream(new File("src/test/resources/SiteTestData.xlsx"));
workbook = new XSSFWorkbook(fis);
// To get Sheet 1
sheet = workbook.getSheetAt(0);
}
public String getCellData(int rowNum, int colNum)
{
return sheet.getRow(rowNum).getCell(colNum).getStringCellValue();
}
}