Хак для Selenium WebDriver
Собственно,очень удобно использовать аннотации в WD
@FindBy(id = "idOfYourElement") WebElement myLocator;Но иногда требуется достать локатор из используемого элемента.Никакого метода для этого нет,поэтому будем хакать.
Путь это немного костыльно,но иногда необходимо.
public static String getXPath(WebElement element) { String jscript = "function getPathTo(node) {" + " var stack = [];" + " while(node.parentNode !== null) {" + " stack.unshift(node.tagName);" + " node = node.parentNode;" + " }" + " return stack.join('/');" + "}" + "return getPathTo(arguments[0]);"; return "//"+(((JavascriptExecutor)driver).executeScript(jscript, element)); }Так можно получить локатор по xpath.
Но на мой взгляд,к этому нужно прибегать в крайних случаях.
Всем спасибо.