我正在尝试捕获将随机生成的元素的id。我可以像这样成功捕获我的元素id的值......
| storeAttribute | //div[1]@id | variableName |
现在我的变量将是......
divElement-12345
我想删除'divElement-',以便我留下的变量是'12345',这样我以后可以使用它来选择与它相关的'form-12345'元素......就像这样:< / p>
| type | //tr[@id='form-${variableName}']/td/form/fieldset/p[1]/input | Type this |
我怎么能够做到这一点?
答案 0 :(得分:4)
Selenium,XPath和CSS Selector有两个选项。我已经读过CSS Selector更适合在FireFox和IE中进行测试。 使用最新版本的Selenium IDE(3/5/2009)我成功使用了storeEval来评估Javascript表达式,使您可以访问javascript字符串函数。
的XPath:
storeAttribute | //div[1]@id | divID
storeEval | '${divID}'.replace("divElement-", "") | number
type | //tr[@id='form-${number}']/td/form/fieldset/p[1]/input | Type this
CSS选择器:
storeAttribute | css=div[1]@id | divID
storeEval | '${divID}'.replace("divElement-", "") | number
type | css=tr[id='form-${number}'] > td > form > fieldset > p[1] > input | Type this
答案 1 :(得分:1)
XPATH中有许多功能可以解决您的问题。假设“divElement-”是一个不会改变的常量,并且你使用的是XPath 2.0,我建议:
子 - 后(DIV [1] / @ ID /文本(), “的DivElement - ”)