Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在selenium ide中引用/处理动态按钮_Selenium_Selenium Webdriver_Selenium Ide_Selenium Grid - Fatal编程技术网

如何在selenium ide中引用/处理动态按钮

如何在selenium ide中引用/处理动态按钮,selenium,selenium-webdriver,selenium-ide,selenium-grid,Selenium,Selenium Webdriver,Selenium Ide,Selenium Grid,我试图在selenium IDE中录制一个脚本,当单击back按钮时,上一页应该会被加载/打开。当我重播脚本时,IDE显示错误为“未找到元素”,脚本失败 我已经尝试了定位器的所有可能选项,但我正在测试的应用程序在每次刷新页面时都会随机更改按钮的id 请尽快帮助我。 已经谢谢了 我会检查ID,找出哪个部分不会改变 如果不改变ID的部分在中间,则使用此: css=[id*='idPart'] 如果ID的未更改部分位于末尾: css=[id$='idSuffix'] 如果ID的未更改部分位于开头:

我试图在selenium IDE中录制一个脚本,当单击back按钮时,上一页应该会被加载/打开。当我重播脚本时,IDE显示错误为“未找到元素”,脚本失败

我已经尝试了定位器的所有可能选项,但我正在测试的应用程序在每次刷新页面时都会随机更改按钮的id

请尽快帮助我。
已经谢谢了

我会检查ID,找出哪个部分不会改变

如果不改变ID的部分在中间,则使用此:

css=[id*='idPart']
如果ID的未更改部分位于末尾:

css=[id$='idSuffix']
如果ID的未更改部分位于开头:

css=[id^='idPrefix']

您可以使用html地址。在我的情况下,我使用了如下

“html/body/div[3]/div[2]/section[2]/div/div[2]/div[2]/form/div/table/tbody/tr[11]/td[2]/div/input”

所以我在目标字段中实现如下

xpath=html/body/div[3]/div[2]/section[2]/div/div[2]/div[2]/form/div/table/tbody/tr[11]/td[2]/div/input

注意:实际上,如果页面上有多个按钮,这不是正确的做法,但没有任何解决方案

问候,, Sachin Deshpande

您可以尝试以下方法:

command: click

target: //button[@type='button']

如果按钮有任何特定的“值”,则您可以将其放入
字段,如果没有,则只需尝试上面的两行代码。

您是否打算说检查firebug中的元素?如果是这样,我已经检查了按钮,这是我得到的按钮属性。。。当我刷新页面后检查按钮时。。。我得到。。。。。。。。。。。。。。您可以清楚地看到,ID在刷新后发生了更改…是的,但是您可以使用
css=[ID$='-btnEl']
,前提是页面中没有其他控件的末尾有“-btnEl”。我正在测试的页面中有多个按钮,ID从按钮开始,以btnEl结束,它们之间唯一的区别是中间部分(数字)每次刷新都会发生变化!如果你能添加一些HTML,包含你想要点击的元素的那一行,以及上面的几行,我们应该能够帮助你找到一个定位器。我被困在这里了!!请有人帮忙!!!甚至Webdriver也拒绝识别按钮!附加对象的inspect元素HTML
,但在您想要查找的按钮上方没有更多的HTML行(至少3-5行,最好更多),将很难构建一个选择器来查找您想要的确切元素。除此之外,我建议在所需元素上方查找唯一的ID、类或名称,然后构造类似于
“div.divClass>table>tr>td>[ID$='btnEl']”的选择器。您可以编辑原始问题并将HTML添加到其中。