【发布时间】:2013-04-30 06:36:10
【问题描述】:
我们正在使用 Selenium WebDriver 测试一个应用程序。 HTMLUnitDriver 是我们的选择(因为非 gui 测试),有时 IEDriver 用于演示目的。无论如何,我尝试单击一个按钮,这个按钮必须打开一个 rich:popuPanel(modal=true) 并单击该面板上的一个链接。使用 IEDriver 没问题,但使用 HTMLUnitDriver 时 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
【问题讨论】:
标签: webdriver htmlunit showmodaldialog