DevExpress有没有办法明确设置对象的ID?

时间:2015-04-07 16:31:34

标签: selenium devexpress watir web-testing

我正在测试使用DevExpress开发的新网页。对象Ids(html ids)都是随机字符串,与它们识别的内容无关。

即:     a class =" dxm-content dxm-hasText dx" HREF =&第34 / CR /&SDPersonellHomePage#34;     ID =" HeaderMenu_DXI0i0_T" style =" float:none;">     span class =" dx-vam">摘要页/ span> / a>

有没有办法告诉DevExpress给这个对象一个更有意义的ID? 或者添加另一个我们可以用来为我们的测试工件提供可读性的参数?

2 个答案:

答案 0 :(得分:0)

使用Watir,如果模式本身是唯一的,您可以使用正则表达式来匹配属性。它比精确的字符串慢,但更灵活。例如:

browser.link(id: /HeaderMenu_\w{6}_T/)
browser.link(id: /HeaderMenu_\w{6}_T/, class: 'dx-vam')
browser.link(id: /HeaderMenu_\w{6}_T/, class: /^dx/)
browser.link(id: /^HeaderMenu_/, href: /PersonellHomePage$/)

答案 1 :(得分:0)

在与DevExpress支持进行多次对话后,他们现在声称他们实际上并不支持Selenium,并建议使用他们自己的测试引擎。

回顾一下,引擎几乎比录制和播放工具更好。 DevExpress明确声明他们不建议使用'Id'参数进行自动化测试,并且迄今为止还没有提供添加自定义参数的方法。

此时,如果您计划构建任何持久的自动化测试,我必须建议不要使用此工具。

如果DevExpress回复一个可行的解决方案,我会更新。

相关问题