如何使用 Selenium 和 Java 定位具有相同类的元素

我无法为具有相同类的 BI 仪表板窗格找到合适的元素

<a class="mi-title" deatta-no-in="inTitleShowed('folder')" daetta-ni-href="" data-ng-bind="navverTreeItemScope.listItem.title" style="" xpath="1">Staging - ALCDE</a>`

它们看起来都像上面的元素,唯一改变的是仪表板名称Staging - ALCDE


侃侃无极
浏览 168回答 3
3回答

湖上湖

正如您提到的,唯一改变的是仪表板名称,即Staging - ALCDE,因此您必须为此引入WebDriverWaitelementToBeClickable(),并且您可以使用以下任一定位器策略:linkText:new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.linkText("Staging - ALCDE"))).click();xpath:new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//a[@class='mi-title' and text()='Staging - ALCDE'][starts-with(@data-ng-bind, 'navverTreeItemScope')]"))).click();

慕姐4208626

你可以试试这个:WebElement&nbsp;elmt&nbsp;=&nbsp;driver.findElement(By.xpath("(//*[@class='mi-title'])[1]"));改为[1]等[2],如果有多个,这是元素的编号。

翻翻过去那场雪

您还可以使用此 xpath 来识别元素driver.findelement(By.xpath("//*[@data-ng-bind='navverTreeItemScope.listItem.title']"))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java