День добрый! Надеюсь на подсказку опытных автоматизаторов.
Используемые инструменты: selenium 2.35.0
В ходе теста необходимо кликать 4 кнопки, отвечающие за различный функционал. Проблема в следующем, все 4 кнопки webdriver находит, клик по одной из них приводит к ожидаемому результату, однако клик следующей кнопки результата не даёт. Т.е. драйвер ее видит, клик происходит, но вызова соответствующего функционала нет. Очередность кликов роли не играет, отрабатывает любая, если кликать ее первой.
Фрагмент собственно кода, вызывающего клик по элементу:
public static void clickButton(DesktopKeyHolder button, boolean reportFlag) {
WebElement element = Driver.getDriver().findElement(By.xpath("//input[@value='" + button + "']"));
if (SetupKeyHolder.DRIVER.toString().equals("firefox")){
element.click();
} else element.sendKeys(Keys.ENTER);
if (reportFlag) Reporter.log(MessagesFormatter.clickOnMsg(ReportKeyHolder.ELEMENT_BUTTON, button));
}
Сразу оговорюсь, что опробован поиск элемента различными способами, по id вместо value, а так же непосредственно на странице с использованием аннотаций, как то
@FindBy(xpath = "//input[@id='forma___21']")
WebElement buttonApply;
Тот же эффект, если вызывать клик при помощи javascript
JavascriptExecutor executor = (JavascriptExecutor)Driver.getDriver();
executor.executeScript("arguments[0].click();", element);
element.click();
и
Actions builder = new Actions(Driver.getDriver());
Actions hoverOverRegistrar = builder.moveToElement(element);
hoverOverRegistrar.perform();
element.click();
Проверено в трех различных браузерах IE 10.0.14, chrom 33.0.1750.154 m, firefox 28.0.0.5186.
Большое спасибо, даже за подсказку направления куда капать.)))