硒IDE有办法处理动态元素吗



我使用selenium IDE来自动测试一个包含动态xpath的网页。我注意到selenium IDE在第一次播放时捕捉到了xpath fine。然后在关闭浏览器并打开后,xpath当然发生了变化,但保存的目标是旧的xpath。

硒有办法解决这个问题吗?

我知道我可以使用.contains方法,但我可以将其应用于目标吗?硒IDE firefox扩展图片

要识别动态元素,可以构造动态定位器。举几个例子:

  • 使用css作为以abc:开头的具有id属性的<span>标记

    span[id^='abc']
    
  • css用于具有包含pqr:的class属性的<span>标记

    span[class*='pqr']
    
  • <span>标记使用xpath,该标记具有以xyz:结尾的value属性

    span[value$='xyz']
    
  • <span>标记使用xpathid属性以abc:开头

    //span[starts-with(@id, 'abc')]
    
  • <span>标记使用xpath,其中class属性包含pqr:

    //span[contains(@class, 'pqr')]
    

动态CSS_SELECTOR的说明

通配符定义如下:

  • ^:指示属性值
  • *:表示属性值包含
  • $:表示属性值

参考

您可以在中找到一些相关的详细讨论

  • Java Selenium Web驱动程序表达式通过以开头和以结尾的ccs查找动态元素

最新更新