2012-07-09 65 views
1

我想用Selenium RC发送命令到IE8的弹出窗口。无法使用硒选择IE8弹出窗口RC

目前,我可以点击一个按钮并打开弹出窗口。

但是,我无法选择窗口发送命令。

我对这个问题进行了大量的研究大约一周,我相信这完全是一个IE问题。我找到了一些解决方法;几个博客指示用户打开一个空白窗口来“捕捉”命令。

但是,当我实现下面的代码时,会弹出一个空白窗口,并且在单击打开弹出窗口的按钮时,会打开一个THIRD窗口并加载我需要的页面。

我是不是准确地设定目标?请参阅下面的selenium rc命令以及页面的html源代码。

的Java代码

selenium.runScript("selenium.browserbot.document.getElementByID(
       'ctl00_ContentPlaceHolder1_WebGroupBox1_btnAddRequirement').target='popup'" 
); 

selenium.openWindow("", "popup"); 

///Click on Add Requirement button 
selenium.click("id=ctl00_ContentPlaceHolder1_WebGroupBox1_btnAddRequirement"); 

try { 
    Thread.sleep(2000); 
} catch (InterruptedException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} 
selenium.selectWindow("popup"); 

HTML的添加要求按钮

<input id="ctl00_ContentPlaceHolder1_WebGroupBox1_btnAddRequirement" 
     type="submit" 
     style="font-family:Arial,Times New Roman,Courier New;" 
     onclick="return validateProject(); 
       WebForm_DoPostBackWithOptions(new 
        WebForm_PostBackOptions(
          "ctl00$ContentPlaceHolder1$WebGroupBox1$btnAddRequirement", 
          "", 
          true, 
          "", 
          "", 
          false, 
          false 
       ) 
       ) 
       " 
     value="Add New Requirement" 
     name="ctl00$ContentPlaceHolder1$WebGroupBox1$btnAddRequirement" 
> 

回答

0

在华廷(不同的,我知道),我送过ALT + TAB组合并输入到处理弹出框。