建议在Protractor中定位父元素的方法

ale*_*cxe 14 javascript selenium xpath selenium-webdriver protractor

根据新发布的样式指南,使用by.xpath()定位器被认为是一种不好的做法.我实际上是在尝试遵循这个建议,但仍坚持获取父元素.

目前我们使用..XPath表达式来获取元素的父级:

this.dashboard = element(by.linkText("Dashboard")).element(by.xpath("..")); 
Run Code Online (Sandbox Code Playgroud)

如何使用Protractor/WebDriverJS定位器中的其他内置函数找到元素的父元素?

Bri*_*ine 10

当我挖掘样式指南,并同意要避免使用xpath时,总会有一个例外证明该规则.我认为这是其中一个案例:)


qui*_*mmo 6

实际上,目前有一种更简单的方法来选择避免使用的元素的父元素xpath.从一个ElementFinder你可以简单地访问父元素parentElementArrayFinder,然后例如触发click方法:

myElement.parentElementArrayFinder.click();