2013-05-06 67 views
0

我们正在使用Selenium WebDriver测试应用程序。 HTMLUnitDriver是我们的选择(因为非gui测试),有时用于PresentationProposes的IEDriver。无论如何,我尝试点击一个按钮,这个必须打开一个丰富的:popuPanel(模态=真),然后单击该面板上的链接。使用IEDriver并没有问题,但使用HTMLUnitDriver时,popupPanel无法打开。我试图以多种方式执行这些点击:WebDriver开放丰富:popupPanel

JavascriptExecutor jsdriver = (JavascriptExecutor) driver; 
    jsdriver.executeScript("$('input[id$=freigabeCmd_id]').focus();"); 
    //below are the other tries 
    // jsdriver.executeScript("$('input[id$=freigabeCmd_id]').click();"); 
    // jsdriver.executeScript("window.document.getElementById('editorViewForm_id:freigabeCmd_id').click()"); 
    // jsdriver.executeScript("arguments[0].click()", freigabeButton); 
    // jsdriver.executeScript("arguments[0].fireEvent('onclick');", freigabeButton); 

进一步我尝试了“正常方式”:

 freigabeButton.click(); 
    //below are other ways i found here on stackoverflow 
    // freigabeButton.sendKeys(Keys.ENTER); 
    // new Actions(driver).moveToElement(freigabeButton).clickAndHold().release().build().perform(); 

,但没有给我带来获取popupPanel“可见”。任何人都知道为什么?!我现在真的被卡住了。如果你需要更多的信息,请让我知道。

使用:版本的HtmlUnit 2.12和最新SeleniumVersion

回答

0

这可能是你的web应用使用JavaScript来推出丰富的弹出面板,并且您禁用了javascript运行HtmlUnitDriver?它是disabled by default,所以你需要明确地启用它。

+0

Javascript已启用。 client.getOptions()setJavaScriptEnabled(真)。 – goya 2013-05-07 16:36:14