标签:
RFS自动化测试心得:
1、RIDE编辑器,快速注释和取消注释:
按组合键Ctrl + 3,快速注释,会在代码行前加comment
按组合键Ctrl + 4,取消注释
2、log打印日志:有时候日志不会打印变量中间值,不方便定位问题,可使用 log ${temp}打印。
3、遇到获取attribute(属性)中带有不可知数目空格时,用string.split ${temp} ${SPECE}分割,日志可打印出列表中每一个空格。
4、字符串截取:用fetch from left/right 关键字,比如:${temp} FetchFromLeft ‘123 ’ ${SPECE}会得到‘123’。
5、☆有时候获取html元素中title和value值时,会遇到编码不严谨,@value中字符串中有多个空格,比如‘123 ’(123后面2个空格),
但是RIDE编辑器中每个表格处理空格可能会合并,如果你get attribute 了value属性,有2个空格,但是Should Be Equal 时输入123空格空格,
可能会失败(工作环境用的老版本,不知道新的怎样),空格不匹配,日志不太能看出来。
解决办法有3个:
1)用${SPECE}占位表示空格,可乘以number,表示多个空格;
Should Be Equal ${temp} 123${SPECE*2}
2)获取属性后split或fetch去掉空格再对比;
3)用xpath取属性时,去掉空格
fn:normalize-space(string)
fn:normalize-space()
删除指定字符串的开头和结尾的空白,并把内部的所有空白序列替换为一个,然后返回结果。如果没有 string 参数,则处理当前节点。
例子:normalize-space(‘ The XML ‘)
结果:‘The XML‘
6、preceding-sibling搜索当前节点之前的所有同级别节点,类似:following-sibling搜索当前节点之后的所有同级别节点
用法://button[@value=‘总容量‘]/preceding-sibling::tr[text()=‘硬盘‘],自动化大多数情况是定位特定一个节点,注意跟::后面跟具体属性元素定位。
7、${SPECE}和${EMPTY},空格和空:
空格前面讲了,${EMPTY}可以用在<tr value="" title="123">这种属性值为空的情况,这时xpath用get attribute取属性//tr[@title=‘123‘]@value,Should Be Equal ${temp} ${EMPTY}
【RobotFromwork + Selenium + Xpath 工作心得】
标签:
原文地址:http://www.cnblogs.com/chen-qilin/p/4951430.html