因为刚开始使用Angular中的新项目(并且还有另一个项目,其中测试用 Java 编写,因此如果有可能就不会使用Protractor),难以定位带有xpath的元素。 在找到主页按钮时,请帮助我(虽然它看起来很简单)但在我看来这是一个很大的困惑。这是页面来源:
<ul _ngcontent-c9="" class="be-inline-menu be-font--be">
<!---->
<!---->
<!----><be-inline-menu-item _ngcontent-c2="" _nghost-c10="" class=""><li _ngcontent-c10="" class="be-inline-menu__item">
<a _ngcontent-c10="" class="be-inline-menu__item__inner be-typo-be be-inline-menu__item__inner--is-active" href="/home">
Home
<!---->
所以,试过这个(在检查元素的同时)并没有得到任何东西:
//ul[@_ngcontent-c9.class='be-inline-menu be-font--be']//a
答案 0 :(得分:2)
要查找文字为 Home
的按钮,您可以使用以下任一选项:
cssSelector
:
driver.findElement(By.cssSelector("ul.be-inline-menu.be-font--be a.be-inline-menu__item__inner.be-typo-be.be-inline-menu__item__inner--is-active[href=/home]")).click();
xpath
:
driver.findElement(By.xpath("//ul[@class='be-inline-menu be-font--be']//a[@class='be-inline-menu__item__inner be-typo-be be-inline-menu__item__inner--is-active' and @href='/home']")).click();
答案 1 :(得分:0)
试试这个xpath .// a [contains(text(),'Home')] 您也可以使用css选择器 a [href =“/ home”]