我正在为我的应用程序使用量角器编写端到端测试。我看到了表单中的错误:
No element found using locator: By.model("address.fullName") error.
引发此错误的相应量角器代码是:
var angularElement = element(By.model("address.fullName"));
angularElement.sendKeys("test");
但是我可以使用以下方法获取此元素:
var angularElement = element(By.xpath('//input[@ng-model="address.fullName"]'));
HTML片段:
输入ng-model =" address.fullName"类型="文本" class =" control-input ng-pristine ng-invalid ng-invalid-required"大小=" 40"命名="全名" ng-class =" {' required-field':isInformationSubmitted}"需要=""
我不确定为什么会这样。有什么想法吗?
答案 0 :(得分:4)
我有一些严重的错误,我的错误发生导致该项目没有显示在页面上或者量角器没有完成更新其模型所以在使用变量i之前:
- 最大化页面:如果元素是看不见的
browser.manage().window().maximize();
- 打开项目所在的列表:
等待量角器完成更新它的模型:
var ptor = protractor.getInstance();
ptor.waitForAngular();