WinRunner测试设计(5)

简介: WinRunner测试设计(5) 用TSL编程 1、用编程来增强你的测试脚本 WinRunner测试脚本由一些TSL语句代码组成。(TSL,Mercury Interactive's Test Script Language) 在TSL中,每一语句有...

WinRunner测试设计(5)


用TSL编程
1、用编程来增强你的测试脚本
WinRunner测试脚本由一些TSL语句代码组成。(TSL,Mercury Interactive's Test Script Language)
在TSL中,每一语句有一个分号结尾,一般一个语句占一行,也有占多行的情况,如:
if(button_check_state("Underline",OFF)==E_OK)
    report_msg("Underline check box is unavailable.");
TSL有点像C语言格式,它易于使用,且无需编译。你只需录制或键入测试脚本,就可以立即执行测试。
TSL包括4种类型的函数:
1)Context Sensitive functions(上下文敏感函数)用于执行GUI对象的特定任务,如:点击按钮或从列表中选择某项。
2)Analog functions(模拟函数)描述鼠标点击,键盘输入,以及鼠标确切的坐标。
3)Standard functions(标准函数)通常用于编程任务,如发送消息到报告中或执行一个计算。
4)Customization functions(定制函数)允许你定制WinRunner来满足你的测试环境。
WinRunner包含了一个可视化编程工具,它可以辅助你快速和简单地增加TSL函数到测试脚本中。
2、使用描述语言
当你增加了一个对象到GUI Map中,WinRunner会给它赋予一个逻辑名。一旦这个对象存在于GUI Map中,你就可以增加测试语句并对对象执行功能。要增加这些语句,你通常键入对象的逻辑名来描述对象。
例如:在下面的语句中,“航班预订”(Flight Reservation)是一个窗口的逻辑名,File和Open Order是菜单的逻辑名。
set_window("Flight Reservation",5);
menu_select_item("File;Open Order...");
在GUI Map中,每个对象都有一个独特的逻辑名来标识。这样,WinRunner就可以在GUI Map中用逻辑名查找对象,并用对象的属性值进行操作。
你还可以不通过GUI Map来添加对象的脚本语句,要这么做的话,你需要更多的描述信息以致于能够让WinRunner在测试运行期间能识别对象。
例如:在航班预订应用程序中,假定你要录制一个订购命令,那么,在你创建测试后,你想增加一个对单选按钮的操作,该单选按钮是用于订购航班用的,此时,与其你通过GUI Map增加一个对象来录制,不如你直接增加一个对你要选择的单选按钮的脚本语句,并设置该单选按钮的状态为on。
通过定义对象类来描述对象,MSW_class类,并增加许多附加的属性:值对。
语法如下:
funcation_name("{class:class_value,MSW_class:MSW_value,property3:value,...,propertyX:value}",other_function_parameters);
-----------------------
说明如下:
function_name:你要执行对象的函数名;
property:value:对象的属性和它的值。
other_function_parameters:当为对象使用逻辑名时,你键入所需的或可选的函数参数到语句中。
-----------------------
实例:对刚才订购航班的操作
set_window("Flight Reservation",3);
button_set("{class:radio_button,MSW_class:Button,label:Business}",ON);
-----------------------
如果你不能确定待识别对象的属性和值时,你可以使用GUI Spy来浏览当前对象的属性和值。
3、增加注释(Comments)和空白(White Space)
为了让测试脚本更易读和理解,你可以对脚本增加注释和空白。
3.1、使用注释
注释通常为一行或一行的部分,它以 # 开头。在运行测试时,TSL解释器不处理注释。
例如:
-----------------------
#Open the Open Order window in Flight Reservation application
set_window("Flight Reservation","10);
menu_select_item("File;Open Order...");

#Select the reservation for James Brown
set_window("Open Order_1");
button_set("Customer Name",ON);
edit_set("Value","James Brown");#Type James Brown
button_press("OK");
-----------------------
3.2、插入空白
在测试脚本中,空白指的是spaces按键输入,tabs按键输入,以及空行。
TSL解释器对空白不敏感。
使用空白可以让测试脚本的逻辑更清晰。

目录
相关文章
|
1月前
|
测试技术
软件质量保护与测试(第2版)学习总结第十一章 白盒测试
本文是《软件质量保护与测试》(第2版)第十一章的学习总结,详细讲解了白盒测试中的控制流测试技术,包括语句覆盖、判断覆盖、条件覆盖、判定-条件覆盖和路径覆盖等方法,并通过具体代码示例展示了如何设计测试用例来验证程序中的不同执行路径。
51 2
|
SQL 测试技术
测试思想-测试设计 关于测试用例设计的一点感想
测试思想-测试设计 关于测试用例设计的一点感想
90 0
|
安全 测试技术
测试思想-测试设计 测试用例设计需要注意的几个点
测试思想-测试设计 测试用例设计需要注意的几个点
102 0
|
敏捷开发 测试技术
测试思想-测试设计 精简测试用例编写
测试思想-测试设计 精简测试用例编写
95 0
|
JSON 测试技术 数据格式
测试思想-测试设计 接口测试用例设计实践总结
测试思想-测试设计 接口测试用例设计实践总结
115 0
|
测试技术
测试思想-测试设计 测试用例设计最新实践总结-来自不断的追求
测试思想-测试设计 测试用例设计最新实践总结-来自不断的追求
80 0
|
测试技术
测试思想-测试计划 软件测试方法与测试策略简述
测试思想-测试计划 软件测试方法与测试策略简述
98 0
|
测试技术 索引
测试思想-系统测试 用户文档测试(摘录)
测试思想-系统测试 用户文档测试(摘录)
233 0
|
安全 测试技术
测试思想-验收测试 关于验收测试
测试思想-验收测试 关于验收测试
62 0