No element found using locator: by.model() error

2020-02-11 01:05发布

问题:

I'm writing an end to end test using protractor for my application. I'm seeing errors of the form:

No element found using locator: By.model("address.fullName") error. 

The corresponding protractor code which is throwing this error is:

var angularElement = element(By.model("address.fullName"));
angularElement.sendKeys("test");

However I'm able to fetch this element using:

var angularElement = element(By.xpath('//input[@ng-model="address.fullName"]'));

HTML snippet:

input ng-model="address.fullName" type="text" class="control-input ng-pristine ng-invalid ng-invalid-required" size="40" name="fullName" ng-class="{ 'required-field': isInformationSubmitted }" required=""

I'm not sure why this is happening. Any ideas?

回答1:

I've had some close errors, my error occurred cause the item was not shown on the page or protractor did not finish updating its model so before using the variable i:
-maximized the page: If the element was unseen browser.manage().window().maximize();
-opened the list the item was in:
-waiting for protractor to finish updating it's model:

var ptor = protractor.getInstance();
ptor.waitForAngular();


标签: protractor