如何使用量角器点击此元素按钮

How can this element button be clicked using protractor?

本文关键字:元素 按钮 何使用 量角器      更新时间:2023-09-26

我正在尝试使用量角器选择此按钮:

<button tabindex="-1" type="button" class="btn btn-default pull-left" ng-click="$arrowAction(-1, 0)">
 <i class="glyphicon glyphicon-chevron-up">
 </i>
</button>

其中唯一唯一的元素是ng-click="$arrowAction(-1, 0)"

没有我尝试过的作品:

element(by.css("//button[@ng-click='$arrowAction(-1, 0)']")).click();

//button[@ng-click='$arrowAction(-1, 0)']不是有效的CSS选择器。实际上看起来这是一个XPath表达式,您打算使用by.xpath()定位器。

不过,您可以使用部分属性检查:

$("button[ng-click*=arrowAction]").click();

这里的$element(by.css(...))的快捷方式,*=的意思是"包含"。

或者,做一个完全匹配:

$("button[ng-click='$arrowAction(-1, 0)']").click();

我仍然不喜欢这种情况下使用的定位技术,但考虑到我们所拥有的,这可能是我们能做的最好的。理想情况下,如果您可以控制应用程序代码和模板,请添加一个有意义的idclass或自定义数据属性来唯一标识元素。