Я хочу открыть фильтры, только если они еще не открыты. Для этого я проверяю, является ли кнопка «Применить фильтр» видимой / активируемой.
К моему удивлению, я получаю элемент как видимый / кликабельный, хотя это не так.
Код кнопки, указанный ниже,
<div class="m-t-20 text-left filter-btn-holder ">
<input type="hidden" id="filterType" value="">
<button type="button" class="submit btn btn-primary btn-mini filter-focus" id="filterButton" onclick="javascript:getFilteredMedia(true);" "="">Filter</button>
<button type="button" class="submit btn btn-danger btn-mini" id="filterButton" onclick="clearFilter();">Reset</button>
<button type="button" class="submit btn btn-mini" data-webarch="toggle-right-side" id="closeButton"><i class="fa fa-times" aria-hidden="true"></i></button>
</div>
![Screenshot when the button is visible](https://i.stack.imgur.com/ouH5G.png)
![Screenshot when the button is not visible](https://i.stack.imgur.com/MGANn.png)
Метод, пытающийся проверить, является ли элемент кликабельным
public boolean isClickable(WebElement el)
{
try{
WebDriverWait wait = new WebDriverWait(driver, 6);
wait.until(ExpectedConditions.elementToBeClickable(el));
return true;
}
catch (Exception e){
return false;
}
}
XPath кнопки: xpath = "//button[@id='filterButton' and text()[contains(.,'Filter')]]