我编写了以下代码,以使用量角器实现自动化。
this.promoteToOperationaltSandboxes3 = async function(){
const allMainPanel = element.all(by.className('tropos-appbox-main-panel col-md-12'));
console.log(typeof allMainPanel);
console.log('In the wait function , number of the main panels is '+allMainPanel.length);
const allLitags = await allMainPanel[0].all(by.className('dropdown-menu ng-scope')).all(by.tagName('li'));
console.log('In the wait function , number of the litags is '+allLitags.length);
}
我正在这样的一个规范文件中调用此函数。
await appsPage.promoteToOperationaltSandboxes3();
在执行此功能时,即使浏览器没有打开,也没有将erorr设置为;
消息: TypeError:无法读取未定义堆栈的属性“ all”: TypeError:无法读取未定义的属性“全部”
此外,在日志中,我可以看到以下消息:
在等待功能中,主面板的数量未定义。
谁能帮助我解决这些问题,并帮助我更好地履行诺言。
答案 0 :(得分:2)
您应该更改allMainPanel
以便首先在该位置获得索引:
const allMainPanel = element.all(by.className('tropos-appbox-main-panel col-md-12')).get(0);
然后将allLitags
也分成两个独立的变量:
const allLitags = allMainPanel.all(by.className('dropdown-menu ng-scope'));
const liElement = await allLitags.all(by.tagName('li'));