AngularJS量角器 - 使用Ng-Click绑定在页面上查找元素

时间:2014-07-17 15:27:09

标签: jasmine protractor

我的页面上有一个按钮,如下所示:

<button ng-click="myFunction()" ng-show="flag">
    Submit
</button>

该元素没有ID。

有没有办法使用绑定到Ng-Click的函数找到这个元素?或者我是否必须为此元素分配ID以使用Jasmine / Protractor定位它?

4 个答案:

答案 0 :(得分:71)

刚试过这个并且它有效:

element(by.css('[ng-click="myFunction()"]'))

答案 1 :(得分:33)

我浏览了Protractor API并且没有找到与通过ng-click查找元素相关的任何内容。我找到了

element(by.buttonText("Submit"));

不完全相同,但在我的环境中完成工作。

答案 2 :(得分:1)

如果您想使用ng-show,可以试试这个:

element(by.Css("button[ng-show]")); // Get element with tag < button > and has ng-show attribute

或:

element(by.Css("button[ng-show*=flag]")); // Get element with tag < button > and has ng-show attribute which contains word flag

答案 3 :(得分:0)

我不是要添加一个我不想提供测试挂钩的ID,而是将type="submit"添加到该按钮,然后您可以搜索By.css('[type="submit"]')