我如何选择/点击一个带有for=“”的元素"属性[量角器]

How can I select/click an element with a for="" attribute? [protractor]

本文关键字:元素 量角器 属性 for quot 选择 何选择 一个      更新时间:2023-09-26

我正在写一个量角器测试。我想点击一个文本为"点击我"的元素,我如何才能抓住这样一个具有以下属性的元素:

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

试试这个:

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

尝试通过.cssContainingText 找到它

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

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

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

其中CCD_ 1有助于修剪额外的空格和换行符。

这应该能在中工作

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