gpt4 book ai didi

java - 如何通过.xpath 在 Selenium Web Driver 中查找元素

转载 作者:太空宇宙 更新时间:2023-11-04 12:30:04 25 4
gpt4 key购买 nike

我有这个 HTML 输出(Firebug):

<a class="tab-toolbar-button tab-widget tab-disabled" title = "Revert All">
<span clas = "tab-toolbar-button-icon tab-icon-revert"></span>
</a>

但是升级服务器和新界面后我有这个:

<div class="tabToolbarButton tab-widget disabled">
<span class="tabToolbarButtonImg tab-icon-revert"></span>
<span class="tabToolbarButtonText">Revert</span>
</div>

我的 Java 代码是:

private static void doResetFilter() throws Exception {
waitForLoadingSpinner();
element =wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//a[contains(@class, 'tab-toolbar-button')][@title='Revert All']")));

boolean isEnabled = element.getAttribute("class").contains("tab-enabled");

if (isEnabled) {
log("reset filter");
element.click();
}
else {
log("filter reset not needed");
}
}

现在我需要修改我的Java代码以兼容新版本。因为我是 Selenium 和 Java 的新手(我继承了这段代码),如何更改文本部分?

我已经尝试过这样的方法了,但是还是没有结果。有人可以帮忙吗?

private static void doResetFilter() throws Exception {
waitForLoadingSpinner();

element = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//span[@class=’Revert’]")));


boolean isEnabled = element.getAttribute("class").contains("enabled");

if (isEnabled) {
log("reset filter");
element.click();
}
else {
log("filter reset not needed");
}

}

先谢谢了!

最佳答案

您可以找到具有所需 @classdiv 元素,该元素的 span 子元素包含所需的文本:

//div[contains(@class, 'tabToolbarButton') and span = 'Revert']

关于java - 如何通过.xpath 在 Selenium Web Driver 中查找元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37947046/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com