当前位置: 首页 > 知识库问答 >
问题:

Selenium IDE未检测到id

瞿宏儒
2023-03-14

我正在尝试运行使用硒IDE记录的测试。以下网页由 IDE 生成

<tr>
    <td>clickAndWait</td>
    <td>css=span.blt-txt</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>id=pt1:svMenu:np1:6:cni1::disclosureAnchor</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>id=pt1:r5:0:mr1:gts1:gts_pc1:itFilterFieldValue::content</td>
<td></td>
</tr>
<tr>
    <td>click</td>
    <td>id=pt1:r5:0:mr1:gts1:gts_pc1:cil1::icon</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>id=pt1:r5:0:mr1:gts1:gts_pc1:tt1:0::di</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>id=pt1:r5:0:mr1:gts1:gts_pc1:tt1:1:astTreeSNo</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>id=pt1:r1:0:rAstDtl:0:cb4</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>id('pt1:ptGeneric:ot1::_afrTtxt')/x:div/x:h1</td>
    <td></td>
</tr>

当我运行测试/执行命令,我得到一个错误说[error]元素id=pt1: r5:0: mr1: gts1:gts_pc1: tt1:0::d我没有找到

有什么办法可以解决这个问题吗?

共有2个答案

西门品
2023-03-14

在测试用例中使用生成的 ID 通常是一个坏主意。当服务器重新启动/数据更改时,这些 ID 也往往会更改。

无论如何,你的问题似乎是时间的经典问题。您的元素在页面更改后点击时是否加载了AJAX?如果是,Selenium会在它们完全加载之前尝试单击它们。在单击导致问题的元素之前,您应该使用<code>waitForElementPresent</code>。

通常,将SeleniumIDE用于AJAX重页面会非常容易地变得困难。考虑切换到手动Selenium RC编写,或者更好的SeleniumWebDriver。您可以两全其美-首先在IDE中单击测试,然后以任何语言将代码导出到WebDriver,进行所需的更改,添加等待(隐式通常就足够了),就完成了。

沈畅
2023-03-14
  1. 似乎生成的 id 尝试不要使用此 ID 或使用包含 (尝试使用其他 xpath)
  2. 我会只使用ID的最后一个单词(你需要检查它) 3.你可以突出显示以查看你在哪里

contain./li[contains(,'Model')]]的示例

 类似资料:
  • 日安。 我试着让我的电脑检测我的JDK,我想安装SDK管理器,对于eclipse,我的目标是运行一个虚拟的android设备。我已经安装了JDK,并设置了JAVA_HOME路径。下面是路径的一些片段。我目前正在运行Windows1064bit,没有找到任何链接到其他要做的事情。我已经找了一段时间了。 CMD错误消息 如果有人知道我做错了什么,请告诉我。

  • 我是一名Java新手,我想通过在minecraft上修改来进行训练。我在youtube上关注tutos(因为找不到新的tutos,所以是旧的tutos),安装了MCP,运行了一些命令(其中一些命令会让我出错),当我最终启动ta代码时,我注意到所有与forge库相关的方法和内容都是红色的。我不能用任何符号来解决这个问题。所以,请问有没有人有一个解决方案,我在网上搜索了很多次,但我发现它的旧芭蕾舞团不

  • 使用https://altbeacon.github.io/android-beacon-library/samples.html中的代码试图检测IBeacon发射器,该发射器是iOS8,如下http://blog.passkit.com/configure-iphone-ibeacon-transmiter/,在哪一步出错了,我需要在区域中使用BeaconIdentifier作为mymonito

  • 我一直试图让flutter检测Android SDK。 回报 PS I:\project\flutter\fluttertest\flutterproject>flutter doctor-v [√]flutter(Channel beta,v0.1.5,在Microsoft Windows上[Version 10.0.16299.248],locale en-美国) •flutter Versi

  • 我是SonarQube开发者的忠实粉丝。虽然这一次我需要做管理工作,因为我需要从一个新的安装配置它。我在SonarQube“Methods should not have too lanes”中看到了这个规则,但我没有看到它属于任何默认配置文件(“findbugs+fb-contrib”、“Sonar way”)。我想这就是我在任何项目中都没有看到任何这种类型的规则违反的原因。我认为这应该是一个常

  • 我试图使用一个带有selenium的无头chrome浏览器,它也绕过了机器人检测测试,目前使用以下项目https://github.com/ultrafunkamsterdam/undetected-chromedriver每次我试图实现代码时,它都不能识别驱动程序。以下是您了解的链接 这是代码 好吧,当我运行程序时,我在终端中得到以下内容