gpt4 book ai didi

java - 使用 selenium webdriver 和 java 访问 Salesforce 自定义对象

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

每次 SalesForce 发布新版本时,Salesforce 网页上的大多数元素 ID 都会发生变化(我使用元素的 ID 属性通过自动化代码来定位它)。这破坏了我的自动化脚本。

在我的例子中,有一个名为“问题名称”的文本框,我想在此文本框中输入一个值。

最近的 html:

<label class="label inputLabel uiLabel-left form-element__label uiLabel" for="7:1781;a" data-aura-rendered-by="1040:0" data-aura-class="uiLabel">
<span class="" data-aura-rendered-by="1041:0">Question Name</span>
<span class="required " data-aura-rendered-by="8:1781;a">*</span>
</label>
<input id="7:1781;a" class=" input" maxlength="80" aria-describedby="" placeholder="" required="" data-aura-rendered-by="11:1781;a"
data-interactive-lib-uid="5" aria-required="true" type="text">

我现有的xpath:

driver.findElement(By.xpath("//input[@id='6:2634;a']")).sendKeys("test");

Salesforce 应用程序的所有 ID 都会针对每个新版本动态更改,我的测试脚本因上述带有 Id 的 xpath 而失败,因此请建议我替代解决方案。

我应该如何在运行时获取输入id值?或者让我知道是否还有其他可能。

最佳答案

您可以使用以下内容:

driver.findElement(By.xpath("//label[contains(., 'Question Name')]/following-sibling::input")).sendKeys("test");

这将搜索包含文本“问题名称”的标签,然后选择以下输入同级

关于java - 使用 selenium webdriver 和 java 访问 Salesforce 自定义对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47262243/

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