我注意到如果我使用的是element.all& get()页面对象,如果我把get()放在页面对象端它可以工作,但如果我把它移动到规范方面它不起作用。例如,使用此元素定位器。
element.all(by.repeater('some_element'));
如果我想选择此元素数组中的第一项。我可以像这样编写页面对象:
==mypage.js==
this.myfoo = element.all(by.repeater('some_element')).get(0);
然后从我的规范中调用它,它将获得数组中的第一个元素。
==myspec.js==
mypage.myfoo;
以上工作正常,但是如果我将.get(0)移动到规范端并将其从页面对象端移除它就不起作用。
==mypage.js==
this.myfoo = element.all(by.repeater('some_element'));
==myspec.js==
mypage.myfoo.get(0);
任何人都知道为什么?将它放在页面对象端是否只是更好的编程?我不介意以它的工作方式使用它。我只是好奇,如果我在规范方面使用.get(),它为什么不起作用。