51Testing软件测试论坛

标题: selenium如何获取并操作页面中id为动态变化的元素 [打印本页]

作者: alchaochao    时间: 2015-5-10 17:06
标题: selenium如何获取并操作页面中id为动态变化的元素
元素<span id="Amount4425126" class="redl" name="AmountPrice">19.78</span>,
id="Amount4425126"中,4425126这个数字每次打开页面是变化的,应该怎么通过By.id方式来获取
作者: tiankai30    时间: 2015-5-11 14:51
试试这个
/span[contains(@id,'Amount')]
如果有多个类似的id,可能需要更详细的路径
作者: alchaochao    时间: 2015-5-12 18:12
tiankai30 发表于 2015-5-11 14:51
试试这个
/span[contains(@id,'Amount')]
如果有多个类似的id,可能需要更详细的路径

类似的id只有一个,是通过xpath方式还是其他的?可否给一个比较详细的语句,谢谢
作者: tiankai30    时间: 2015-5-13 09:36
alchaochao 发表于 2015-5-12 18:12
类似的id只有一个,是通过xpath方式还是其他的?可否给一个比较详细的语句,谢谢

是通过xpath的
find_element: xpath,'~~/span[contains(@id,'Amount')]'
上句基于你使用的语言修改
~~是元素前的xpath路径  具体根据你页面来定了
作者: langrong718    时间: 2015-9-14 13:54
如下两种方式都是可以的:  前提是你的名字都只有一个,有多个的话,需要额外制定路径.
请参考如下吧:

driver.findElement(By.xpath("span[@name='AmountPrice']"));
driver.findElement(By.name("AmountPrice"));  




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2