gpt4 book ai didi

java - 具有相同类名的容器的 Xpath

转载 作者:行者123 更新时间:2023-12-02 05:31:07 25 4
gpt4 key购买 nike

我正在为一个java应用程序编写一个selenium测试,该应用程序在每次登录 session 后创建新的id,所以我找不到使用ID的元素。

如何在不使用 ID 的情况下找到 xpath 中具有相同名称的第二个或第三个类

<div class="aui_FieldLayout_InputContainer">
<textarea id="gwt-uid-1601" class="aui-TextAreaInput printable" rows="4"></textarea>
</div>

<div class="aui_FieldLayout_InputContainer">
<textarea id="gwt-uid-1602" class="aui-TextAreaInput printable" rows="4"></textarea>
</div>

<div class="aui_FieldLayout_InputContainer">
<textarea id="gwt-uid-1603" class="aui-TextAreaInput printable" rows="4"></textarea>
</div>

最佳答案

有多种方法可以做到这一点。一种选择是通过 xpath 查找元素并检查 id 属性是否以 gwt-uid- 开头:

driver.findElements(By.xpath('//textarea[starts-with(@id, "gwt-uid-")]'))

另一种选择是依赖 textarea 的容器:

driver.findElements(By.xpath('//div[@class="aui_FieldLayout_InputContainer"]/textarea'))

当然还有其他方法可以做到这一点,哪一种更可靠且首选取决于页面结构、属性名称和值的唯一性等。

希望有帮助。

关于java - 具有相同类名的容器的 Xpath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25534338/

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