The site is running an older Angular version, 5.2.11.
I've got something that looks like a straight input field on the page, but maybe not so straight in the markup:
<div felt fieldname="approxCostDevelop" class="felt" e2e-selector="approx-cost-develop">
<est-currecy-felt ng-model="develop.price" input-id="approxCostDevelop">
<translate>Approximate cost of development</translate>
</est-currency-felt>
</div>
When I try accessing this text field, selenium gives me and Element Not Interactable exception.
I've tried placing the e2e-selector attribute both where it is now, and after the input-id attribute field. I've also tried using the input-id attribut instead of the e2e-selector. Same result every time.
The way I create and access the WebElement:
//@FindBy(css = "[e2e-selector=approx-cost-develop]")
@FindBy(css = "[input-id=approxCostDevelop]")
private WebElement approxCostDevelopTextField;
public void setApproxCostDevelop(String approxCost) {
pproxCostDevelopTextField.sendKeys(approxCost);
}
It's not a password field or any kind of special field. And it's visible all the time, from the loading of the page. The elements directly before it are a list of checkboxes, which all are interactable.
wait.unti(ExpectedConditions.elementToBeClickable(approxCostDevelopTextField))
? – Mate Mrše