如何使用for =""选择/单击元素?属性? [量角器]

时间:2016-05-09 19:11:16

标签: javascript angularjs protractor

我正在写一个量角器测试。我想点击一个带有文字"点击我"的元素,如何使用以下属性获取这样的元素:

//view
 <label class = "tile-label ng-binding" for="public1">
      Click Me
 </label>

4 个答案:

答案 0 :(得分:0)

尝试找到它by.cssContainingText

编辑:其他答案假设OP控制了下划线代码,这对我来说似乎并非如此。显然,在尝试编写测试时,我们都会喜欢适当的标识符/最佳实践,但有时候情况并非如此。祝你好运!

答案 1 :(得分:0)

试试这个:

<label class = "tile-label ng-binding" for="public1">
     <input type="checkbox" id="public1"/>Click me</label>

答案 2 :(得分:0)

要通过文本可靠获取元素,可以使用xpath定位技术:

element(by.xpath("//label[normalize-space(.) = 'Click Me']")).click();

其中normalize-space()有助于修剪额外的空格和换行符。

答案 3 :(得分:0)

这应该有效

element(by.css('label[for="public1"]')).click();