There are actually two ways to verify this.
1) Using ExpectedConditions
var EC = protractor.ExpectedConditions; // Waits for the element with id 'abc' to not be clickable. browser.wait(EC.not(EC.elementToBeClickable($('#abc'))), 5000);
If it is determined that it is clickable, it will return an error.
2) Using protractor isEnabled , isDisplayed and isPresent
So, as far as I understand, you can create isNotClickable , which will return false only if the element is present, displayed or enabled, and true otherwise:
function isNotClickable(element) { return element.isPresent().then((isPresent) => { if (isPresent) { return element.isDisplayed().then((isDisplayed) => { if (isDisplayed) { return !element.isEnabled(); } return true; }); } return true; }); }
source share