如何在IFRAME和确认页面之间切换

时间:2014-02-25 19:31:36

标签: java selenium-webdriver

从主页面我可以切换到下面的框架并输入正确的值。当我按下提交按钮时,我会看到一个显示“您已成功提交的确认页面。谢谢!” (作为确认页面上的文字)。如何访问此页面以便我可以验证上面的确认字符串? 谢谢!

 driver.switchTo().frame("activateFrameId");    
 driver.findElement(By.xpath("//div[@id='unEnrolledMain']/div/input")).clear();
 driver.findElement(By.xpath("//div[@id='unEnrolledMain'] /div/input")).sendKeys("hello");
 driver.findElement(By.xpath("//div[@id='unEnrolledMain']/div/p/input[1]")).clear();
 driver.findElement(By.xpath("//div[@id='unEnrolledMain']/div/p/input[1]")).sendKeys("98136");    
 driver.findElement(By.xpath("//div[@id='unEnrolledMain']/div/p/a/span")).click();

仅供参考 - 确认页面源代码下面只有1个IFRAME标记。

  <div class="like">
  <iframe src="//www.facebook.com/plugins/like.php? allowTransparency="true">
  </iframe>
   </div>

感谢您的回复。是的,确认页面将在新窗口中打开。这是你指的是什么?

 String mainWindowHandle=driver.getWindowHandle();        
      driver.findElement(By.xpath("//span[@id='ctl00_ContentPlaceHolder1']/div/a")).click();

  Set s = driver.getWindowHandles();
  Iterator ite = s.iterator();
   while(ite.hasNext())
 {
String popupHandle=ite.next().toString();
if(!popupHandle.contains(mainWindowHandle))
 {
    driver.switchTo().window(popupHandle);      

 }

0 个答案:

没有答案