嗨,我从下拉菜单中选择了这个元素,我尝试选择:
<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();
,我会收到“失败:元素不可见”
有人可以向我解释一下吗?
谢谢
答案 0 :(得分:1)
因为*
中的//*[contains(text(),'Auto Customer')]
表示任何标记,而不仅仅是strong
标记。但//strong[contains(text(),'Auto Customer')]
必须为strong
代码。
//*[contains(text(),'Auto Customer')]
应该在页面上找到多个元素,并且第一个元素不可见。您可以在Chrome DevTool的Element
标签中尝试使用此xpath,以查看它可以找到多少元素,第一个元素是否可见。