在OpenTest 之 运行环境准备中介绍了运行自动化测试需要做的一些准备工作,本篇将继续给大家介绍OpenTest的脚本语法以及使用方法,通过学习后读者应该能够开始动手编写UI自动化测试脚本了。
关键字驱动测试
在学习语法之前,需要了解一下关键字驱动测试方法的基本概念,这样有利于我们了解OpenTest语法的基本组成。
关键字驱动测试是数据驱动测试的一种改进类型,主要关键字包括三类:
- 被操作对象(Item)
- 操作(Operation)
- 值(value)
OpenTest就是采用关键字的形式将测试逻辑封装在数据文件中,测试框架只要能够解释这些关键字即可对其应用自动化,下面介绍一下OpenTest的语法。
用例示例
- 新增部门, 编码:Test 名称:自动化测试
- 选择前两行和【一审人员】
- 选中一审人员,设置部门管理的功能权限,取消部门管理下的全部展开和全部折叠功能
- 选择数据权限页签,添加PBS业务对象,设置可读表达式为 1=1
- 保存
- 删除当前新增记录
脚本示例
10 | 文本编辑框( "编码" ).输入( "Test" ) |
11 | 文本编辑框( "名称" ).输入( "自动化测试" ) |
14 | 按钮( "岗位.选择岗位" ).弹出窗口( "选择岗位管理" ) |
23 | 列表( "岗位.岗位" ).选择行( "一审人员" ) |
25 | 列表( "岗位.功能权限.业务对象.业务对象" ).选择行( "部门管理" ) |
26 | 列表( "岗位.功能权限.功能权限" ).分组( "部门管理" ).单元格( "全部展开" , "选择" ).去除勾选 |
27 | 列表( "岗位.功能权限.功能权限" ).分组( "部门管理" ).单元格( "全部折叠" , "选择" ).去除勾选 |
30 | 列表( "岗位.岗位" ).选择行( "一审人员" ) |
33 | 按钮( "岗位.数据权限.选择对象" ).弹出窗口( "选择数据权限作用的对象" ) |
36 | 列表( "岗位.数据权限.数据权限" ).单元格( "PBS模板,PBS" , "可读表达式" ).输入( "1=1" ) |
42 | 树形列表( "部门管理" ).选择行( "自动化测试" ) |
语法
OpenTest采用了关键字测试驱动方法,它的常用语法也很简单,形式为:对象(参数).操作(值),语法如下:
对象 | 参数 | 操作 | 值 | 说明 | 示例 | 子对象 | 支持 |
按钮 | <标题> | 弹出窗口 | <窗口标题> | 标题为按钮上的文本内容 | 按钮("岗位.选择岗位").弹出窗口("选择岗位管理") | | ● |
| | 点击 | | | | | ● |
列表 | <标题> | 选择行 | <名称> | 标题为列表所在页签的标题,如果窗体只有一个列表,可以不加参数 | 列表.选择行("一审人员") | 单元格(列) | ● |
| | | <行号> | 行号从0开始 | 列表.选择行(0) | 分组 | ● |
分组 | <标题> | | | 根据标题获取列表的一个分组 | 列表("岗位.功能权限.功能权限").分组("部门管理") | 单元格(行,列) | ● |
树形列表 | <标题> | 选择行 | <名称> | 标题为列表所在页签的标题,如果窗体只有一个列表,可以不加参数 | 树形列表("部门管理").选择行("自动化测试") | 单元格(列) | ● |
单元格 | <[行号,行标题], [列号,列标题]> | 输入 | <输入值> | 作为列表、树形列表和分组的子对象 | 列表("岗位.数据权限.数据权限").单元格("PBS模板,PBS", "可读表达式").输入("1=1") | | ● |
| <[列号,列标题]> | | | 作为行的子对象 | | | |
文本编辑框 | <标题> | 输入 | <值> | | 文本编辑框("编码").输入("Test") | | ● |
下拉列表 | <标题> | 下拉选择 | <名称> | | 下拉列表("项目信息").下拉选择("江南四期1、4区项目") | | ● |
下拉树形列表 | <标题> | 下拉选择 | <名称串> | | 下拉树形列表("合同科目").下拉选择("建安工程类合同->建安工程和总包管理配合服务") | | ○ |
页签 | <标题> | 最大化 | | | | | |
| | | | | | | |
| | 打开模块 | <模块标题> | | 打开模块 "部门管理" | | ● |
| | 添加 | | | | | ● |
| | 保存 | | | | | ● |
| | 删除 | | | | | ● |
| | 关闭窗口 | [:确认,:取消,] | | | | ● |
| | 按住Ctrl | | | | | ● |
| | 释放Ctrl | | | | | ● |
| 标题样式为: 页签名称.[页签名称.]对象标题 | | | | | | |
| | | | | | | |
| | | | | | |
|
本文转自 jingen_zhou 51CTO博客,原文链接:http://blog.51cto.com/zhoujg/518551,如需转载请自行联系原作者