如何修改selenium IDE以使用Id作为元素定位器

问题描述 投票:0回答:1

我想修改selenium IDE插件,以便它只能通过特定属性查找元素。目前selenium IDE使用的定位器过于严格。例如: xpath=//clr-dg-cell[4]/div 如果页面布局被修改,它们就不起作用了。我想修改selenium IDE,这样每当我开始录制它时,它只会使用一个特定的属性(例如:id)。有点像by.id("username") 我应该修改selenium IDE插件中的哪个文件来实现此功能?

selenium automated-tests ui-automation selenium-ide
1个回答
1
投票

如果你想使用固定ID,解决方案很简单id=YourID

{
  "Command": "type",
  "Target": "id=sometext",
  "Value": "This box is ${boxsize} chars wide"
},

但我想你要找的是how to work with changing ID in Selenium IDE

在某些网站上,按钮(或一般元素)的ID在不同页面加载(动态ID)之间变化。这意味着测试用例宏将在重放时失败,因为每次刷新页面后按钮都有一个新ID。

解决方案:通常ID的某些部分保持不变e。 G。后123456和后555555。我们可以使用XPath的starts-with或contains函数来搜索ID的稳定部分。所以选择器将是这样的:// * [contains(@ id,'post-')]。

另一种解决方案(仅限Kantu)是使用visual UI testing来识别元素。无论它具有什么ID,它总是会在其图片的“下方”找到相同的元素。

© www.soinside.com 2019 - 2024. All rights reserved.