【发布时间】:2015-06-25 23:22:12
【问题描述】:
有人可以帮我理解 WebDriverJS/Protractor 在这种情况下是如何工作的吗?
function MyPageObject(buttonElementFinder) {
this.getButtonByIndex = function(index) {
return {
myButton: buttonElementFinder.get(index)
}
}
}
1. describe('My button', function() {
2.
3. it('should contain the text foo', function() {
4. var myElementFinder = element.all(by.css('.foo'));
5. var pageObject = new MyPageObject(myElementFinder);
6. var button = pageObject.getButtonByIndex(0);
7. expect(button.text()).toBe('foo');
8. });
9.
10. });
由于ElementFinders 的.get 方法,WebDriverJS 控制流是否在第 6 行添加了一个操作?
我想expect 也在第 7 行向控制流添加了另一个项目?
编辑:我已更新代码以使用element.all。
【问题讨论】:
-
ElementFinder上的get()方法需要什么?我不记得ElementFinder上存在这种方法。谢谢。 -
这条线可能有用吗? github.com/angular/protractor/blob/…
-
是的,但这是
ElementArrayFinder(element.all()的结果)。 -
好的,我已经更新代码以使用
element.all。遗漏是在将我的实际代码转换为针对该问题缩减的代码时出现错误。
标签: javascript selenium protractor webdriverjs