量角器 - 我可以将 $$(elementLocator).first() 用于更多元素,例如第二个、第三个等等吗?
Protractor - Can I use $$(elementLocator).first() for more elements like the second, third and etc..?
我可以对第二个、第三个等更多元素使用 $$(elementLocator).first()
吗?
还是仅针对第一个和最后一个元素?
例如 - 我有一个下拉列表,里面有 5 个按钮,但它们有一些属性,我想一个一个地单击所有按钮..所以第一个将是:
$$("button.font-sm.md-button.md-ink-ripple").first().click();
我怎样才能点击第二个选项?
这是元素属性:
<button class="font-sm md-button md-ink-ripple" type="button" ng-transclude="" ng-click="actionClick(saction, $event)"><span class="ng-binding ng-scope">Message</span></button>
我知道可以使用 Xpath,但我更喜欢一些稳定的定位器。
您可以使用 get()
量角器内置的功能。 get()
函数是一个基于零索引的函数。下面是如何使用它 -
$$("button.font-sm.md-button.md-ink-ripple").get(0).click(); //Click first element
$$("button.font-sm.md-button.md-ink-ripple").get(1).click(); //Click second element
您可以使用 .get(x),其中 x 是项目的 zero-based 索引。
$$("button.font-sm.md-button.md-ink-ripple").get(1).click(); //Click second item
$$("button.font-sm.md-button.md-ink-ripple").last().click(); //Click last item
我可以对第二个、第三个等更多元素使用 $$(elementLocator).first()
吗?
还是仅针对第一个和最后一个元素?
例如 - 我有一个下拉列表,里面有 5 个按钮,但它们有一些属性,我想一个一个地单击所有按钮..所以第一个将是:
$$("button.font-sm.md-button.md-ink-ripple").first().click();
我怎样才能点击第二个选项?
这是元素属性:
<button class="font-sm md-button md-ink-ripple" type="button" ng-transclude="" ng-click="actionClick(saction, $event)"><span class="ng-binding ng-scope">Message</span></button>
我知道可以使用 Xpath,但我更喜欢一些稳定的定位器。
您可以使用 get()
量角器内置的功能。 get()
函数是一个基于零索引的函数。下面是如何使用它 -
$$("button.font-sm.md-button.md-ink-ripple").get(0).click(); //Click first element
$$("button.font-sm.md-button.md-ink-ripple").get(1).click(); //Click second element
您可以使用 .get(x),其中 x 是项目的 zero-based 索引。
$$("button.font-sm.md-button.md-ink-ripple").get(1).click(); //Click second item
$$("button.font-sm.md-button.md-ink-ripple").last().click(); //Click last item