Siebel Open UI 和 Selenium;更改身份证/姓名



我正在为客户做一个项目,他们要升级到Siebel Open UI。通过这次升级,他们还想开始实现Selenium。我们目前面临的问题,或者一旦实现将面临的问题是,每次构建时,Siebel中HTML元素的ID/name都会发生变化。因为我们正在讨论很多视图和applet,所以每次手动更改代码并不是一个好的解决方案。

这个问题有什么好的解决方案?提供的一个解决方案是一个关联表,我们可以在其中跟踪ID的变化。

在这种情况下,Xpath也不是一个好的选择,因为视图和applet的结构很复杂。

我建议你看看CSS选择器。它们比XPath更快,也不那么脆弱。对于动态的ID/名称,通常至少有一部分ID是静态的。

例如,

<a id="somestatictext_12345">...

,其中"12345"是动态生成的数字。在这种情况下,你可以使用像

这样的CSS选择器
driver.findElement(By.cssSelector("[id^='somestatictext']"));

例子
"[id^='somestatictext']" - ID begins with "somestatictext"
"[id$='somestatictext']" - ID ends with "somestatictext"
"[id*='somestatictext']" - ID contains "somestatictext"

要了解更多信息,请查看这个CSS选择器参考

相关内容

  • 没有找到相关文章

最新更新