【发布时间】:2017-02-08 05:59:21
【问题描述】:
下面是网站页面
我正在尝试点击继续使用网上银行按钮。但我无法做到这一点。我用过xpath,但它不起作用。这是我试过的xpath:
driver.findElement(By.xpath(".//*[@id='wrapper']/div[6]/a/img")).click();
步骤:
- 打开网址http://www.hdfcbank.com
- 点击网站上的登录按钮。新的弹出窗口将会打开。
- 点击“继续使用网上银行”。这不起作用
代码如下:
driver.findElement(By.id("loginsubmit")).click();
Thread.sleep(3000);
Set<String> set = driver.getWindowHandles();
Iterator<String> it = set.iterator();
System.out.println(set.size());
for( String windowTab : set){
if(!windowTab.equalsIgnoreCase(MainWindow)){
driver.switchTo().window(it.next());
driver.manage().window().maximize();
String Wdinw2 = driver.getWindowHandle();
Thread.sleep(10000);
System.out.println(driver.getTitle());
driver.findElement(By.xpath(".//*[@id='wrapper']/div[6]/a/img")).click();
break;
}
}
控制台:
线程“主”org.openqa.selenium.NoSuchElementException 中的异常: 没有这样的元素:无法找到元素: {"method":"xpath","selector":".//*[@id='wrapper']/div[6]/a/img"}
【问题讨论】:
-
我只是想知道 //*[@id='wrapper'] 之前是否有一个 dot
-
我猜你必须先移动到另一个窗口,因为当点击登录按钮时,“Continue to NetBanking”按钮显示在另一个窗口中。然后用你的 xpath 元素试试。
-
您是否处理了对弹出窗口的更改? stackoverflow.com/questions/19403949/…
-
假设您有权对此银行站点执行自动化测试。金融网站,尤其是银行,对任何自动访问都非常偏执。
标签: selenium selenium-webdriver