在使用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}]
相关推荐
**Robot Framework调用Python类方法**是自动化测试中的一种常见技术,Robot Framework是一个高级的通用自动化框架,而Python是其背后的编程语言,提供了丰富的库和功能。本篇将深入讲解如何利用Robot Framework进行...
在软件测试领域,特别是Web应用程序的功能性测试方面,我们经常会遇到各种各样的UI控件,其中日历控件和时间滑块是非常常见的一类。这类控件允许用户通过直观的拖拽方式来选择日期或时间,但在自动化测试中实现这一...
在自动化测试领域,Robot Framework(简称RF)是一个广泛使用的开源测试框架,它支持多种库,可用于Web、桌面、移动应用的自动化测试。在处理多窗口交互时,有时需要精确地选择特定的窗口进行操作,而标准的`Select ...
这些示例是在Robot Framework 2.7.5版本以及robotframework_ride-1.0环境下运行的,且使用Python 2.7作为解释器。需要注意的是,Robot Framework的版本和依赖可能会对语法和功能有所影响,因此在实际使用时应确保...
#### 测试用例1:验证某 Web 页面下的查询条件中的下拉框中的值是否正确 在这个测试场景中,我们需要确保 Web 页面上某个特定的下拉列表(例如“ems_id”)的选项值是正确的。这通常涉及到读取下拉列表的所有选项,...
系统关键字是 Robot Framework 内置的,通常由各个库提供,如 SeleniumLibrary 用于 Web 测试,AutoItLibrary 用于桌面应用测试,AppiumLibrary 用于移动应用测试,以及 Database Library 用于数据库交互。...