【发布时间】:2018-02-20 08:52:03
【问题描述】:
driver.navigate().to("https://maps.mapmyindia.com/");
Thread.sleep(3000);
driver.findElement(By.xpath(".//*[@id='onboarding-popup-sec']/div/div/button")).click();
File src = new File("D:\\Screenshots\\CityList.xlsx");
FileInputStream fis = new FileInputStream(src);
XSSFWorkbook wb = new XSSFWorkbook(fis);
XSSFSheet sheet1 = wb.getSheetAt(0);
int rowcount = sheet1.getLastRowNum();
for(int i=1; i<=rowcount; i++) {
String str = sheet1.getRow(i).getCell(0).getStringCellValue();
fis.close();
driver.findElement(By.xpath(".//*[@id='auto']")).clear();
driver.findElement(By.xpath(".//*[@id='auto']")).sendKeys(str);
Thread.sleep(5000);
By mySelector = By.xpath(".//*[@id='asa']/div[2]/span");
List<WebElement> elements = driver.findElements(mySelector);
int count=0;
for(WebElement e: elements) {
count++;
System.out.println(e.getText());
if(e.getText().toString().equals(str)) {
System.out.println(count);
sheet1.getRow(i).createCell(1).setCellValue("Pass");
}
else {
sheet1.getRow(i).createCell(1).setCellValue("Fail");
}
}
FileOutputStream fos = new FileOutputStream(src);
wb.write(fos);
fos.close();
}
在这段代码中,我打开 Chrome 并通过 selenium 导航到地图站点,并从 Excel 工作表中输入一个字段。在网络上的搜索字段中,它显示了一些自动建议,我想从列表中获取匹配结果的索引并在控制台中打印它。
在上面的代码if(e.getText().toString().equals(str)) 中,这一行没有执行或者索引没有打印。
请帮忙!
【问题讨论】:
-
我已经根据您的确切要求更新了我的答案,看看
-
对您有帮助吗?