我是硒的初学者,所以我的问题可能不容易理解:(
我使用的是SeleniumIDE 3.17.0版本。我正在尝试检查测试中的网页上是否存在设备名称。设备名称存储在阵列中:
execute script || return ["Tablet Samsung Galaxy Tablet A 10 1 2019 LTE 32GB","APPLE IPAD 10.2 2019 128GB","APPLE IPAD 10.2 2019 32GB","APPLE IPAD PRO 2018 11 64GB 4G"] || ArrayDevices
之后,我尝试在xpath搜索中使用这个数组中的每个值:
for each || ArrayDevices || iterator
verify element present || xpath=//a[@class='name']//span[contains(text(),iterator)]
end
主要的问题是,即使我的ArrayDevice中有一个错误的值(只是用于阴性测试(,这个脚本的运行结果总是阳性的。如果我把";迭代器";根据我的xpath语法,使用某些错误的名称,如:
verify element present || xpath=//a[@class='name']//span[contains(text(),"Tablet Samsung Galaxy Tablet A 10 1 2019 LTE 32GB")]
通过这种方式,Selenium为我提供了预期的结果";找不到元素";。
你能解释一下我做错了什么吗?
提前感谢您的反馈!
我想解决方案很简单。您需要在verify元素present命令的xpath中写入${iterator}
,而不是iterator
-${…}是正确的Selenium IDE变量语法。