欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

robot framework + ride web页面测试,表格和字母遍历

程序员文章站 2022-06-01 17:22:56
...

在使用ride调用selenium2library进行web测试时,先后遇到了几个问题。

1. 第一个问题就是在块状布局的页面上始终无法选中控件,总说did not match. 用xpath或各种属性都没有用。

在仔细查看xpath的层级和各项内容后,发现这些控件都在frame层下,而selenium提供了选择frame的函数。所以不select frame就直接查找控件,是无法找到的。

select frame    name=leftFrame

 

 

2. 第二个问题是页面上会有一个按字母检索,每次检索会返回一个数据表格。而ride中,for循环只能在数字或list中遍历,无法直接遍历字母。

没有现成的方法,只能考虑用其它方式解决。其实平台是用python写的,完全支持python语言的函数。但是貌似只能方便的支持单一语句,

: FOR    ${A2Z}    IN RANGE    65    91
    \    ${letter}    evaluate    chr(${A2Z})

 用字母的ascii码值做循环,然后用调用python语句的关键字,强大的evaluate调python完成字母转换,就可以完成字母的遍历了。

 

3. 第三个问题表格的遍历,需要先能知道表格的行数,然后再遍历。

查询了半天,可以使用get matching xpath count来获取,而rawlocator需要使用表中行的定义,如://table[@id= 'data']/tbody/tr

run keyword and return    get matching xpath count    .${rowLocator}

 然后就可以按行数循环去查找单元格了。

${curText}    Get Text    ${rowLocator}[${rowIndex}]/td[${column}]

 

相关标签: web robot framework