量角器使用xpath // * [contains('text')]错误元素不可见

时间:2018-05-22 21:05:45

标签: xpath protractor

嗨,我从下拉菜单中选择了这个元素,我尝试选择:

<div class="tt-suggestion tt-selectable">
  <strong class="tt-highlight">Auto Customer</strong>
</div>

如果我使用element(by.xpath("//strong[contains(text(),'Auto Customer')]")).click();我可以选择它没问题。但如果我使用element(by.xpath("//*[contains(text(),'Auto Customer')]")).click();,我会收到“失败:元素不可见”

有人可以向我解释一下吗?

谢谢

1 个答案:

答案 0 :(得分:1)

因为*中的//*[contains(text(),'Auto Customer')]表示任何标记,而不仅仅是strong标记。但//strong[contains(text(),'Auto Customer')]必须为strong代码。

//*[contains(text(),'Auto Customer')]应该在页面上找到多个元素,并且第一个元素不可见。您可以在Chrome DevTool的Element标签中尝试使用此xpath,以查看它可以找到多少元素,第一个元素是否可见。