Protractor waiting for element to be in DOM Protractor waiting for element to be in DOM selenium selenium

Protractor waiting for element to be in DOM


You should be able to use browser.wait together with the presenceOf ExpectedCondition:

var until = protractor.ExpectedConditions;browser.wait(until.presenceOf(elem), 5000, 'Element taking too long to appear in the DOM');


Protractor has included ExpectedCondition for explicit wait which lets you wait for the element for certain period of time. You should be able to do the following:

var EC = protractor.ExpectedConditions;browser.driver.wait(function () {    browser.wait(EC.visibilityOf(elem), 10000);    return elem;});


the first parameter of browser.wait is a function, if we need to wait until an element is present irrespective of time, then we can use the below code, If you need to restrict the wait to a particular time please give time as second parameter of 'browser.wait'

browser.wait(function() {    return element(by.css("#edudrop1")).isPresent()});