版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1WinRunnerWinRunner 实例教程实例教程目录1. WINRUNNER 简介.31.1 WinRunner 测试模式.31.1.1 环境判断模式(Context Sensitive mode) .31.1.2 模拟模式(Analog mode).31.2 WinRunner 测试过程.31.2.1 创建 GUI map.41.2.2 创建测试.41.2.3 调试测试.41.2.4 执行测试.41.2.5 查看测试结果.41.2.6 报告发现的错误.41.3 样本软件.51.3.1 开始样本软件.51.3.2 样本软件的多个版本.51.3.3 登陆.51.3.4 WEB 版样品软件
2、.52.WINRUNNER 基础知识.52.1 winRunner 程序界面.52.2 主窗口.62.3 测试窗口.82.4 工具栏.93. WINRUNNER 如何创建 GUI MAP .93.1 关于识别 GUI 对象 .93.2 测试中如何识别 GUI 对象 .103.3 物理描述(Physical Description) .103.4 逻辑名(Logic Names).113.5 GUI map.123.6 教 WinRunner 被测软件的 GUI.173.6.1 使用 RapidTest Script wizard.173.6.2 WinRunner 用录制的方式学习 GUI.2
3、33.6.3 WinRunner 用 GUI Map Editor 学习 GUI .234. 创建测试.244.1 选择录制脚本模式.244.2 Context Sensitive 录制模式.254.3 AnaLog 录制模式 .284.4 保存.295. 执行测试.316. 分析测试结果.327. 同步测试.3327.1 同步测试简介.337.2 具体操作.347.2.1 选项中设置(增大默认的间隔时间).347.2.2 设置同步点(延迟).357.2.3 运行测试脚本并分析一个设置同步点后的测试结果:.398. 插入 GUI CHECKPOINT.408.1 GUI Checkpoint
4、简介.408.2 插入 “GUI Checkpint”的示例: .418.3 插入“GUI Checkpoint”的具体实例。 .449. 插入 BITMAP CHECKPOINT.479.1 Bitmap Checkpoint 简介.479.2 录制脚本,插入 Bitmap Checkpoint .489.3 查看执行(期望)结果:.5010. 用 TSL(脚本语言)测试.5110.1 TSL 简介 .5110.2 测试实例.5210.2.1 录制一个基本的测试脚本.5210.2.2 使用功能产生器插入功能点.5310.2.3 调试测试脚本.5431. WinRunner 简介 WinRun
5、ner (以下简称 WR)是基于 MS Windows 的功能测试工具。 由于 C/S 结构的软件功能增加越来越快,QA 部门测试难度越来越大,手工测试已经跟不上这种发展趋势。 WR 可以帮助你自动处理从测试开发到测试执行的整个过程。你可以创建可修改和可复用的测试脚本,而不用担心软件功能模块的变更。你只需要在下班后让计算机自动执行这些脚本,就能轻而易举的发现软件中的错误,从而确保软件的质量。 1.1 WinRunner 测试模式 当你在软件操作中点击 GUI(图形用户界面)对象时,WR 会用一种类 C 的测试本。语言(TSL)生成一个测试脚本。你可以用手工编程的方法编辑这个脚本。WR 包括的功
6、能生成器(Function Generator)可以帮助你快速简便的在已录制的测试中添加功能。WR 包括两种录制测试的模式: 1.1.1 环境判断模式(Context Sensitive mode) 这种模式根据你选取的 GUI 对象(如窗体、清单、按钮等)把你对软件的操作动作录制下来,并忽略这些对象在屏幕上的物理位置。每一次你对被测软件进行操作,测试脚本中的脚本语言会描述你选取的对象和你的操作动作。当你进行录制时间, WR 会对你选取的每个对象做唯一描述并写入 GUI map(映射)中。GUI map 和测试脚本被分开保存维护。当软件用户界面发生变化时,你只需更新 GUI map。这样一来,
7、环境感应模式的测试脚本将非常容易地被重复使用。执行测试只需要回放测试脚本。WR 模拟一个用户使用鼠标选取对象、用键盘输入数据。WR 从 GUI map 中读取对象描述,并在被测软件中查找符合这些描述的对象。WR 可以在同一个窗体中找到这些对象,即使它们的位置发生过变化。1.1.2 模拟模式(Analog mode) 这种模式记录鼠标点击、键盘输入和鼠标在二维平面上(x 轴和 y 轴)的精确运动轨迹。执行测试时,WR 让鼠标根据轨迹运动。这种模式对于那些需要追踪鼠标运动的测试非常有用,例如画图软件。 1.2 WinRunner 测试过程 WR 的测试过程分六个步骤: 创建 GUI map 4 创
8、建测试 调试测试 执行测试 查看测试结果 报告发现的错误1.2.1 创建 GUI map 使用 RapidTest Script wizard(快速测试脚本巫师)回顾软件用户界面,并系统地把每个GUI 对象的描述添加到 GUI map 中。你也可以在录制测试的时候,通过点击对象把对单个对象的描述添加到 GUI map 中。 注意:当使用 GUI map per test 模式,你可以跳过这一步骤。1.2.2 创建测试 你可以通过录制、编程或两者同用的方式创建测试脚本。录制测试时,在你需要检查软件反应的地方插入检查点(Checkpoint) 。你可以插入检查点来检查 GUI 对象,位图(Bitm
9、ap)和数据库。在这个过程中,WR 捕捉数据,并作为期望结果(被测软件的期望反应)储存下来。1.2.3 调试测试 你可以先在调试模式(Debug mode)下运行脚本。你也可以设置中断点(Breakpoint),监测变量,控制 WR 识别和隔离错误。调试结果被保存在 Debug folder,一旦调试结束就可以删除。1.2.4 执行测试 你在检验模式(Verify mode)下测试被测软件。WR 在脚本运行中遇到检查点后,就把当前数据和前期捕捉的期望值进行比较。如果发现有不符合,就记录下来作为实测结果。 1.2.5 查看测试结果 测试是成功还是失败由你来认定。每次测试结束,WR 会把结果显示在
10、报告中。报告会详述测试执行过程中发生的所有主要事件,如检查点、错误信息、系统信息或用户信息。 如果在检查点有不符合被发现,你可以在 Test Results(测试结果)窗口查看预期结果和实测结果。如果是位图不符合,你也可以查看用于显示预期值和实测结果之间差异的位图。 51.2.6 报告发现的错误 如果由于测试中发现错误而造成测试运行失败, 你可以直接从 Test Results 窗口报告有关错误的信息。这些信息通过 EMAIL 发送给测试经理(QA Manager) ,用来跟踪这个错误直到被修复。1.3 样本软件 本教程中很多例子使用 WR 附带的 Flight Reservation(航班预
11、订)软件。 1.3.1 开始样本软件 样本软件位于:开始程序WinRunnerSample Application。该程序有 2 个版本 Flight A 和 Flight B。 1.3.2 样本软件的多个版本 Flight A 这个版本是正常的软件,Flight B 有一些故意加入的错误。在 WinRunner Tutorial(WR 教学)中,两个版本都被使用来互相比较。本教程中的例子在两个版本中都可以使用。 如果 WR 中安装了 Visual Basic 支持,VB 版本的 Flight A 和 Flight B 将被安装到常规样本软件中。 1.3.3 登陆 使用任意用户名(长度必须至少
12、 4 个字符)登陆 Flight Reservation(航班预订)软件,密码为:Mercury。 1.3.4 WEB 版样品软件 http:/MercuryT;或点击开始程序WinRunnerSample Applications Mercury Tours site 2. WinRunner 基础知识2.1 winRunner 程序界面在学习创建测试之前,先了解一下 winRunner 的主界面。执行【开始】-【程序集】-【WinRunner】-【WinRunner】 ,首先开启 WinRunner Add-in Manager 窗口。6WinRunner Add-in Manager 显
13、示你目前可以使用的 Add-in,我们现在介绍的是并没有使用 任何 Add-in,所以请确认没有勾选任何 Add-in 后按下【OK】按钮。欢迎界面,选择 Create a New Test。2.2 主窗口 主窗口包括以下部分: a). WinRunner title bar 标题栏 b). Menu bar 菜单栏 c). Standard toolbar 标准工具栏,包含运行测试时常用的命令 d). User toolbar 用户工具栏,包含创建测试时常用的命令 e). Status bar 状态栏,782.3 测试窗口 在测试窗口创建和执行测试,窗口包含以下部分: a). Test Wi
14、ndow title bar 测试窗口标题栏,显示当前打开的测试名称 b). Test script 测试脚本, 通过录制或编写代码方式生成 c). Execution arrow 执行箭头,指明当前正在执行的那一行脚本,如果想要移动这个标志到某一行,只需要在该行左侧空白处点击鼠标左键 d). Insertion point 插入点,支出你可以插入或编辑文本的地方92.4 工具栏3. WinRunner 如何创建 GUI Map3.1 关于识别 GUI 对象 当使用 Context Sensitive 模式时, 这些 GUI 对象 (如 Windows、 Menus、 Buttons、 Lis
15、ts)可以像用户看到的那样去测试。每个对象都有一组被定义的属性来决定它的行为和外观。WR 通过学习这些属性来识别和定位 GUI 对象,而不需要知道对象的物理位置。你可以使用 GUI spy 查看桌面上任何 GUI 对象的属性。WR 把从 GUI map 上学来的信息储存起来。当执行测试时,WR 使用 GUI map 定位对象:先从 GUI map 读取有关对象的描述,然后寻找有相同属性的对象。你可以通过查看 GUI map 获得对象10的全面图片。 GUI map 是一个或多个 GUI map 文件的总合。有两种方式组织 GUI map 文件。1.你可以为整个软件创建一个 GUI map 文件
16、,或者为每个窗体创建一个 GUI map 文件。多重测试可以参考同一个 GUI map 文件。 这是 WR 的默认模式。 对有经验的用户来说,这是最有效率的方式。具体内容请参考 Global GUI map file 模式下工作。 2.WR 可以在每次创建新的测试时自动创建相关的 GUI map 文件, 你无须担心有关 GUI map 文件的创建、保存或读取的问题。如果你是 WR 新手,这是最简单的使用方法。具体内容请参 GUI map file per test 模式下工作。当 GUI 被修改了之后,你仍然可以使用先前的脚本。你只需要在 GUI map 上添加、删除或编辑相关的对象的描述,W
17、R 就可以在修改后的软件上找到这些对象。 你可以指定 WR 使用某些属性去识别特定的一类对象。 你可以教 WR 去识别自定义的对象,也可以把这些对象映射到标准对象上去。 你也可以教 WR 在窗体上通过把位图定义为虚拟对象的方法识别为 GUI 对象。具体3.2 测试中如何识别 GUI 对象 你通过录制或编程教本的方式创建测试,测试教本语言(TSL)重现了鼠标和键盘对被测软件的操作。WR 用逻辑名(Logic name)定义对象:如“Print”定义 Print dialog box, “OK”定义OK button。逻辑名实际上是对象物理描述的昵称。物理描述是包含一个对象物理属性的清单,如:Pr
18、int dialog box 被定义成一个有“Print”卷标(Label)的窗体。逻辑名和物理描述一起作用,确保每个 GUI 对象有自身唯一的标识。 3.3 物理描述(Physical Description) 11 WR 使用物理描述识别被测软件的 GUI 对象。物理描述包括:物理属性清单和每个属性的值。 这些属性值的配对在 GUI map 中以下面的格式出现: 属性 1: 值 1,属性 2:值 2,property3:value3,. 例如:对于“Open”window 的描述包含两个属性:类(Class)和卷标(Label)。类的属性的值是“window” ,卷标的属性的值是“Open
19、” :class:window,label:Open 类的属性标识对象的类型。 每个对象根据功能不同属于不同的类: window, push button, list, radio button, menu 等。 每个类有默认的属性。有关各种属性的详细描述请参考 GUI map 配置。 注意:WR 总是在对象出现的窗体的环境中学到该对象的物理描述。因此给每个对象创建了一个唯一的物理描述。3.4 逻辑名(Logic Names) 在测试脚本中,WR 不使用全部的物理描述来表示对象,而是给每个对象一个逻辑名。 对象的逻辑名由它的类决定。多数情况下,逻辑名是对象的卷标:一个 button 的逻辑名就
20、是它的卷标,如“OK”或“Cancel” ;一个 window 的名称就是它标题栏上的文本;一个 list 的名称是 list 上方或旁边的文本。 12 对于一个 static text(静态文本)对象,逻辑名是 text 和字串(string) “ (static) ”的结合。如 static text “File Name”的逻辑名是: “File Name (static)” 。 在特定情况下,一些在同一窗体中的对象会有相同的逻辑名加上一个位置选择符(location selector) ,如:LogicName_1, LogicName_2)。目的是给对象一个唯一名称。 3.5 GUI
21、 map 选择 ToolsGUI Map Editor 可以查看 GUI map 的内容。GUI map 实际上是一个或多个 GUI map 文件的总和。 在 GUI Map Editor 中, 你可以查看整个 GUI map 或单个 GUI map 文件的内容。 GUI 对象按照他们在软件中出现时所在的窗体分组。 一般的 Windows 应用程序,通常是由窗口,菜单,list 和按钮等所组成,而这些在WinRunner 中成为 GUI 对象。WinRunner 会透过这些 GUI 对象的属性,如 class,label,wedth,height,handle 与 enabled等,来识别 G
22、UI 对象。WinRunner 只会记录最少但可以组合成唯一的属性来识别 GUI 对象。用 GUI Spy 来查看 GUI 对象的属性WinRunner 提供一个工具叫 GUI Spy,可以用来检视某个 GUI 对象有哪些属性以及WinRunner 是以哪些属性来识别此 GUI 对象。131开启 Flight Reservation 范例程序执行【开始】-【程序】-【WinRunner】-【Sample Application】-【Flight4A】 ,登入窗口会开启。2.开启 WinRunner执行【开始】-【程序】-【WinRunner】-【WinRunner】-【Create a New
23、 Test】 ,如果没有开启欢迎窗口,则点选【File】-【New】 。3.开启 GUI Spy点选【Tools】 【GUI Spy】开启 GUI Spy,勾选【Hide WinRunner】 。144.检视 WinRunner 用来识别各按钮的属性在 GUI Spy 按下【Spy】按钮,WinRunner 会缩到最小,这时你可以看到 Flight Reservation 的登入窗口,将鼠标移动到登入窗口上,这时你可以看到被鼠标指到的 GUI 对象会有个外框在闪动,同时 GUI Spy 也会显示 GUI 对象的属性。以此类推,可以查看所有的对象属性或窗口属性。再按“Ctrl+F3”组合。GUI
24、 SPY 窗口中出现如图所示。15点击 Close,关闭。5.选择 GUI Map 模式当 WinRunner 识别完 GUI 对象后,会将 GUI 对象储存在 GUI Map File,WinRunner 提供二种 GUI Map File 模式:GUI Map File Per Test 与 Global GUI Map File。1) GUI Map File Per Test16在 GUI Map File Test 模式,当你新建立一个测试脚本,WinRunner 就会自动帮组你建立测试脚本的 GUI Map File,当你储存测试脚本时,WinRunner 也会自动储存 GUI M
25、ap File,而当你开启测试脚本时,其 WinRunner 也会自动加载其 GUI Map File,总之所有与GUI Map File 相关的动作,都由 WinRunner 自动处理。2) Global GUI Map File在 Global GUI Map File 模式,你可以多个测试脚本共享一个 GUI Map File。在开启测试脚本时,也要同时加载使用的 GUI Map File 模式。下面是两种模式的优缺点比较:WinRunner 默认值是使用 Global GUI Map File。点选【Tools】-【General Options】-【General】-【GUI Fil
26、es】 ,选择你想要的 GUI Map File 模式。17如果重新设定 GUI Map File 模式,一定要重启 WR 让设定生效。3.6 教 WinRunner 被测软件的 GUI WR 需要先学习软件的 GUI。 当使用 GUI Map File per Test mode 时,WR 会在录制脚本时自动学习软件的 GUI。 当使用 Global GUI Map File mode 时,你需要教给 WR 有关 GUI 对象属性的信息。WR 可以通过以下方式学到信息: 使用 RapidTest Script wizard 学习软件每个窗体中所有 GUI 对象的属性 通过录制脚本的方法学习被
27、录制的那部分软件中所有的 GUI 对象的属性 使用 GUI Map Editor 学习单个 GUI 对象、窗体或某个窗体中所有 GUI 对象的属性 注意:在 GUI Map File per Test 模式下,RapidTest Script wizard 将被禁用。当你选择 Global GUI Map File 模式时,可以使用 RapidTest Script Wizard 帮组你快速建立 GUI Map File。接下来利用 RapidTest Script Wizard 识别 Flight Reservation 的对象。3.6.1 使用 RapidTest Script wizar
28、d【开始】-【程序】-【WinRunner】-【Sample Application】-【Flight4A】 ,在【Agent Name】输入名字,任意至少 4 个英文字母, 【Password】输入 mercury,点击【OK】 。【开始】-【程序】-【WinRunner】-【WinRunner】 , 【Create a New Test】18【Insert】-【Rapid Test Script Wizard】开启 RapidTest Script Wizard 欢迎窗口,点击【next】到下一个画面。出现下图,按“Next”键,进入下一步。19指定要测试的应用程序点选然后点选 Fligh
29、t Reservation 任一位置,如下:(注意:鼠标形状是手指形状和选中窗口的边框是处于闪烁状态)再看 Rapid Test Script Wizard 对话框:20按“next”进行下一步操作,在【Window Name】会出现 Flight Reservation 的窗口名称,如图:清除所有设定,点击【Next】 。21设定 Learning Flow 为 Express。Rapid Test Script Wizard 提供二种学习模式:Express与 Comprehensive。按下【Learn】按钮,可以看到 Rapid Test Script Wizard 开始识别 Flig
30、ht Reservation 中所有 GUI 对象。假如识别过程中,跳出对话窗口通知你有 GUI 对象是disalbed,按下【Continue】让 Rapid Test Script Wizard 继续识别其他 GUI 对象。这时“飞机预定票系统“窗口将开始工作(不断闪烁),记录所有 UI 的状态及相关信息。(同时左上角将有个信息框指示工作状态) 当窗口停止闪烁时,会出现如下提示:在 Start Application 接受默认值 NO,WinRunner 可以自动帮你执行 Flight Reservation程序。点击 Next:22存储 GUI Map File 并设定 Startup
31、Script在 Save File 窗口,主要将 RapidTest Script Wizard 识别的所有 GUI 对象的信息存储在一个 GUI Map File 中。并且设定 Startup Script,则每次执行 WinRunner 时会自动执行此Startup Script,而此 Startup Script 内只有一个指令,就是加载此 GUI Map File。GUI Map File 名称为*.gui。点击【Next】 。出现 Congratulations 窗口,表示你已经完成建立 Flight Reservation 的 GUI Map File 的动作了。233.6.2 W
32、inRunner 用录制的方式学习 GUI WR 也可以通过在 Context Sensitive 模式(默认模式)下录制脚本的方法学习 GUI 对象。你只需要录制对被测软件的操作,WR 会自动学习操作中碰到的 GUI 对象。这个方法虽然快速简单,但是学习得不全面(你没有操作的对象就漏过不学了) 。当你开始录制时,WR 先检查对象是否已经存在于 GUI map 中;如果没有,就学习这个对象。 WR 先把学到的信息放在临时 GUI map 文件中。因此你在退出 WR 时要记住保存。 如果你不希望 WR 把学到的信息添加到临时 GUI map 文件中,你可以在 General Options 对话
33、框的 Environment 栏设置让 WR 不加载临时 GUI map 文件。参考设置 Global Testing 选项。 总的来说,录制方式只用于小的或临时的测试。3.6.3 WinRunner 用 GUI Map Editor 学习 GUI 1).选择 ToolsGUI Map Editor 打开 GUI map 编辑器。2)点击 Learn。24 想要学习一个窗体中所有的对象,就点击窗体的标题栏。当提示是否学习窗体中所有对象时,点击 Yes。 如果只想学习窗体,就点击窗体的标题栏。当提示是否学习窗体中所有对象时,点击否。 如果只学习个别对象,就点击这个对象。 (取消操作,鼠标右键)
34、3)把鼠标移动到对象上,点左键开始学习。 WR 把学到的信息放在当前 GUI map 文件中。 4. 创建测试4.1 选择录制脚本模式WinRunner 可以让你以录制的方式快速建立自动测试脚本。在录制时,使用者还是与25平常一样操作应用程序,而 WinRunner 会将使用者的动作录制下来,如按下鼠标的左键,键盘的输入等,并以 TSL 产生测试脚本,TSL 会显示在 WinRunner 窗口中。WinRunner 提供两种录制模式:Context Sensitive 与 Analog。Context Sensitive 模式Context Sensitive 录制模式主要以 GUI 对象为基
35、础,WinRunner 会识别使用者点选的GUI 对象,以及执行的操作。此模式下,GUI Map File 与测试脚本时保持独立的,当使用接口改变时,只需要更新 GUI Map File。Analog 模式此模式,WinRunner 主要录制鼠标移动的轨迹,鼠标的点选以及键盘的输入三种动作。此模式下产生的 TSL,在执行时,WinRunner 会控制鼠标移动,此鼠标移动的轨迹是以屏幕的绝对坐标为基准,所以当应用程序的位置或是使用接口变动,则以 Analog 模式录制的测试脚本将会执行失败。建议:只有在测试需要记录鼠标移动的应用程序时,如绘图软件,才使用 Analog 录制模式,否则以使用 Co
36、ntext Sensitive 模式优先。Context SensitiveAnalog应用程序包含一般 GUI 对象应用程序包含绘图区域不需要录制鼠标移动的轨迹需要录制鼠标移动的轨迹打算将测试脚本运用在同一应用程序不同版本上4.2 Context Sensitive 录制模式1开启 WinRunner 并加载 GUI Map File【开始】【程序】【WinRunner】【WinRunner】【Creat New Test】检查 GUI Map File 是否已经加载,点选【tools】【GUI Map Editor】开启 GUI Map Editor,再点选【View】【GUI Files
37、】检查是否加载 GUI Map 文件,如果没有加载,则点选【File】【Open】进行加载。2开启 Flight Reservation 并登入执行【开始】【程序】【WinRunner】【Sample Application】【Flight4A】,登入窗口开启。在【Agent Name】输入至少 4 个字母,【Password】输入 mercury,【OK】登陆。263. 录制一个脚本,以“上下文敏感”(Context Sensitive)模式录制。在 WinRunner 中,选择TestRecord-Context sensitive(F2)或者选中工具条上的 Record 按钮。状态条也会
38、告诉你所处的录制模式。4.打开订单 3#。选择 FileOpen Order 菜单,如下图:5. 在随后的窗口中,选中 Order No.(在 checkBox 中打上勾),输入数字 3,按 OK 按钮。6.窗口中将出现所选中记录的内容,如图:277.停止录制。选中 TestStop Record(Ctrl+F3),或者点中工具条上的按钮。8.保存录制的脚本,选中 FileSave。或者工具条上的保存按钮,保存文件名为Lesson3_1。注意:保存时,是作为一个文件夹保存的。当运行此脚本时,所有的信息都将储存在此文件夹中。先记录到此处,以上记录模式均为 Context Sensivite(上下
39、文敏感)。如果在录制脚本的过程中,出现错误,可以将整个脚本语言删掉或者重新建立一个新的脚本,开始录制。下面我们先去认识一下脚本。查看 Lesson3_1 中记录的脚本,如下图:28当你点击一个对象时,W inRunner 分配给其一个逻辑名称,一般为这个对象的文本标签(text label)。如:button_set (Order No., ON); Order No为这个对象的逻辑名称。如上所默认的定义。WinRunner 在打开新的窗口时,每个脚本也都会自动增加一行注释。注释描述以#打头。如:# Flight Reservation当你每次打开一个新的窗口时,Winrunner 会加一条陈
40、述语句。如:当你打开FileOpen Order 的窗口时,WinRunner 会加入一条:set_window (Open Order, 1);当你从键盘输入时,WinRunner 将产生一个 Type(类型?),OBJ_Type(对象类型?)或一个 Edit_set()描述在脚本中。如:在“订单号码”的窗口,当你从键盘上敲入数字,则脚本中将做如下描述:edit_set (Edit, 3);4.3 AnaLog 录制模式上面的脚本是录制到“打开 3#定单”为止,下面继续。(演示 AnaLog 录制模式)9.打开上次录制的脚本 Lesson3_1。如果脚本已经打开,则将鼠标移至上次录制脚本记录
41、中的最后一行。10.在 WinRunner 中,选择 TestRecord-Context sensitive(F2)。11.选中 FileFax Number 功能,如图:12.在下列窗口中输入传真号码(数字)如:0109812320。并将签名选项打上勾。2913.在 Agent Signature 窗口中写下你的名字。用鼠标在白板上签名(画名)。仔细查看 WinRunner 如何在 Context Sensitive 录制模式下进行签名。14、下面看如何在 AnoLog 记录模式下进行录制签名。 15、按下“Clear Signature”按钮。清除刚才所做的签名轨迹。16、将 Fax O
42、rder 窗口移动到屏幕上不同的位置。(在更换 AnoLog 录制模式时,重新设置窗口位置)17、这一步骤(关健)。按 F2 或者再次点击录制按钮转换到 AnoLog 录制模式下。并在 Agent Signature 窗口中写下你的名字(画下你的名字)。仔细观察 WinRunner 如何在 Anolog 录制模式下进行签名录制。18、再次按下 F2 转换回 Context Sensitive 录制模式,按下 Send 按钮,发送传真。窗口将提示发送成功。19、停止录制;并保存脚本。点击工具栏上的4.4 保存注意:如果你运行在 Global GUI Map 模式下,必须保存新的对象到你的 GUI
43、 Map 文件中去。此说法注意与 RapidTest Script Wizard 功能结合,因为前期已做过 RapidTest Script Wizard 来获取 GUI Map 文件,所以在本例子运行录制不会出错。在本例子中,出现了新30的窗口,这些属性暂时保存在临时的 GUI Map 文件中,在退出 WinRunner 之前,必须将其保存到以前用 RapidTest Script Wizard 功能获取过的 GUI Map 文件中去,以备运行脚本时使用,切记!在停上录制退出之前,做如下具体操作:1.选择 ToolsGUI Map Editor.2.选择 ViewGUI Files。注意此时
44、 Fax Order No.3 窗口及属性显示在L0TemporaryMap files 中。3.选择 FileSave,保存,弹出一个新窗口。31选择“是” ,弹出一个新窗口:在 Load GUI files 下拉框中,Flight4a.GUI 文件将显示。4.按下 OK 键,则临时 Map 文件中的窗口及窗口下的所有属性都将从临时文件转入Flitht1a.GUI 文件中去。5. 选择“确定” ,选择退出。5. 执行测试1.检查 WinRunner 窗口和“飞机预定票系统”已运行在你的桌面上。2.确定 Lesson3_1 的测试脚本已打开。如果没有打开,在 WinRunner 中选择File
45、Open,打开测试脚本。3.确定“飞机预定票系统”的主窗口已打开。(登录密码为:mercury)4.在工具条上选择 Verify 模式。如图:5.选择“RunRun from Top”,或在工具条上。按下如图按钮,系统将弹出一个对话框,如下:6.选择“Test Run Name”,系统默认为 res1。这个名称将作为文件夹保存在测试脚本32所在文件夹下(Lesson3_1 所在文件夹)。将“DiSplay test results at end of Run”前的 Check Box 打上勾,表示运行完脚本后自动弹出结果窗口。7.点击“OK”按钮,运行测试。你会看到系统自动执行第 4 部分中我
46、们录制脚本的过程。8.运行结束,自动显示分析结果。6. 分析测试结果1.上面的 Lesson3_1 脚本运行结束后,系统将自动弹出一个结果窗口,我们来看一下:点击工具栏上的图标按钮,也可弹出结果窗口。33 显示当前测试脚本名称显示当前结果路径名称(在运行脚本时指定的,相当于测试的次数)显示测试运行的状态(PASS 或 FAILED)显示这次测试的相关信息,如:日期,操作者名称和总共运行时间。查看详细信息可双击其对应项目。测试记录部分显示运行期间的主要发生事件,也列出了每个发生事件在测试脚本中的行号。2.评估测试结果,关闭,退出。7. 同步测试7.1 同步测试简介1.什么时候你需要一个同步测试A
47、、从数据库中重新获得信息(需要等待);B、等待一个窗口的弹出;C、等待程序进度条达到 100%;D、等待一个状态信息框的出现)2.什么是同步测试WinRunner 通过一个设置好的间隔时间来为等待应用程序响应输入。默认的间隔时间34上限为 10 秒。如果应用程序在运行测试过程中响应缓慢,那么 WinRunner 的默认间隔时间将不够,将导致测试运行意外失败。3.如何使用同步测试如果你在测试过程中发现一个同步问题,那么有两种方法来解决。A、选项中设置(增大默认的间隔时间:毫秒);B、在测试脚本中插入“同步点”,如何操作;7.2 具体操作7.2.1 选项中设置(增大默认的间隔时间)1.选中菜单条上
48、的“Tools”中的“General Options.” 。2.弹出窗口后,选中 Run 页面。(看 Timeout for chckpoints and CS statements:这一项的时间,为 10000 毫秒,即 10 秒)。可以修改这个时间,达到延迟的作用。试试看!缺点:此选项一设置,将影响到所有的测试脚本运行,并将使测试运行速度降低。357.2.2 设置同步点(延迟)当同步问题发生时,在测试脚本的精确位置点插入一个同步测试点。同步测试点将告诉 WinRunner 暂停测试,为了等待应用程序特特殊的响应。这种方法是被推荐使用的。下面我们看一个具体的例子:1.运行 WinRunner
49、,并创建一个新的测试。2.打开“飞机预定票系统”(Flight4A).PASSWORD:mercury3.录制一个脚本,以“上下文敏感”(Context Sensitive)模式录制。在 WinRunner 中,选择 CreateRecord-Context sensitive(F2)或者选中工具条上的 Record 按钮。4.在“飞机预定票系统”中创建一个新的定单。选择“FileNew Order” 。5.填写飞机与乘客信息。如下图:输入明天(注:第二天)的日期,格式:月/日/年。始发地,选中“Los Angeles” 。目的地:选中“San Francisco” 。单击“Flights”按
50、钮后,出现一个飞机航班表。然后双击选中其中某一条。输入你的姓名:如:tanglu选择头等舱。366.插入定单存到数据库。单击“Insert Order”按钮,当插入完成, “Insert Done”信息将出现在状态栏(在界面上方) 。7.再单击“Delete Order”按钮,并确认删除此订单。8.停止录制。9.保存记录,保存为 Lesson4_1。接下来,我们来看同步测试的例子:/第一次失败的例子:1、第一次录制新增 ORDER(订单),然后删除 ORDER(订单).2、改变 Tools-General Option 中,Run 选项 SETTing 中的选项,将第 1 项(Timeout)
51、 时间间隔改为 1000 毫秒,即 1 秒。373、运行 lesson4_1。点击工具栏中的,注意观察当鼠标努力点击“delete order”时所发生的状态。4、发生测试运行失败。鼠标单击“delete order”后无反应。 在弹出的提示窗口中单击 pause 按钮,暂停测试。 注意暂停符号已标记在单击 Delete Order 的命令行上。分析:由于间隔时间改为 1 秒,而程序响应不及 1 秒,出现延迟时间不够情况。错误发生是由于 Winrunner 无法等待到插入订单到数据库的操作完成(只有 1 秒时间),就进行下一步操作,所以失败。/第二次插入同步点后成功的例子:1、 确认窗口处在
52、Lesson4_1.txt 所说的情况下。(由于间隔时间不够导致失败)382、 移动鼠标到所要插入同步点的脚本位置。将鼠标移动到“button_press (Insert Order);”末尾,并回车新增行,如图:3、 插入同步设置。选择“InsertSynchronization PointFor Object/window Property”4、 将手的形状手的形状移到“飞机预定票主窗口” ,捕获“insert done”的位图信息。如图:395、 在脚本窗口原鼠标所在位置,将添加一行脚本语言描述。如图:并修改其中的时间参数,将 1 秒改为 10 秒。保存修改后的脚本。如果工作在 Glob
53、ol Map file 模式下,必须添加临时 Map 到原来存在的 Map 文件中去。参照 4.4 保存一节。7.2.3 运行测试脚本并分析一个设置同步点后的测试结果:确定例子 Lesson4_1 的脚本处在打开状态。注意:在运行之前, “delete order” ,否则,运行会出错。选择“Verify”运行模式,单击按钮,按默认状态按 OK。运行测试;注意“insert done”提示怎样出现在状态条上。40运行结束后,出现如下窗口:1、测试记录部分中的绿色条,表明同步点执行成功。2、双击绿色条,可以看到 Bitmap Imag 的信息图像。3.关闭 Test Rusult 窗口。4.关闭
54、 Lesson4_1 的测试脚本。5.退出“飞机定票系统” 。6.改变的“Timeout”时间间隔为原来的设置(10 秒,10000 毫秒),如图:(有始有终,不至于影响到其它的测试脚本)A)、选择菜单条上的“ToolsGeneral Options”B)、选择 Run 页面C)、将 “Time for checkpoints and CS statements”的时间 1 秒(1000 毫秒)改为 10 秒(10000毫秒)8. 插入 GUI Checkpoint8.1 GUI Checkpoint 简介你可以使用 GUI 检查点来检验被测软件中的 GUI 对象。比如你可以检查一个对话框41
55、在何时打开,一个 button 是否可用等。你所要做得就是指向这个对象,选择你想要 WR 检查的属性。你可以检查 WR 建议的属性或自己指定属性。GUI 对象和被选定的属性保存在一个检查清单上。 然后 WR 捕捉对象的当前属性值并保存起来作为期望值。这时一个 GUI 检查点就自动被插到脚本中。 在脚本中这个检查点显示为 obj_check_gui 或 win_check_gui 语句。 执行测试时,检查点就把实际值和期望值比较。如果不符合就说明检查失败。检查结果可以在测试结果窗口看到。 你检查的对象如果不在 GUI map 中就会被自动添加到临时 GUI map 文件里。 你可以在一个 edi
56、t 对象或 static 文本对象上用常规表达式创建 GUI 检查点。你也可以用检查点检查表的属性和内容。详见检查表的内容。8.2 插入 “GUI Checkpint”的示例:1.新建一个测试。(不要录制)2.打开“飞机定票系统”3.在“飞机预定票系统”中,新建一个订单,输完名字后, “insert order”按钮可用。如图:4.在 WinRunner 菜单选择“InsertGUI Checkpointfor object/window” ,如下图:425.将手形光标移动到“飞机定票系统”的主界面,捕捉“insert order”的 GUI 属性。如图:6.同时屏幕左上角出现提示窗口。如下:
57、43单击:插入默认的检查(列表);双击:查看可用的检查(列表);右键:放弃。7.双击,将弹出一个新的窗口。如图:当你双击“Insert Order”按钮时,将打开此对话框。选择你想要检查的属性。图中默认值为“Insert Order”按钮(激活)可用。8.单击 Cancel,取消插入 GUI Checkpoint。44不管你插入“GUI Checkpoint”是采用它属性的默认值还是你自己定义的值,WinRunner 都将保存其信息,并作为期望值(预期结果)。如果你插入的是一个具体对象的GUI Checkpoint,脚本中将产生 Obj_check_GUI 声明;如果你插入的是一个窗口 GUI
58、 Checkpoint,脚本中将产生 Win_Check_GUI 声明。 当你在应用程序的新版本中运行测试,Winrunner 将比较预期结果与实际结果。8.3 插入“GUI Checkpoint”的具体实例。1.运行 Winrunner.2.运行“飞机预定票系统” 。3.录制。 “TestRecord Context Sensitive” 。4.在“飞机预定票系统” ,选择“Open Order” 。弹出下图:5.为 Order No.Check Box 建立一个 GUI CheckPonit。步骤 1:选择 Insert GUI CheckpointFor Object/windows步骤
59、 2:将手形状指向 Open Order 窗口中的 Order No.如图。45步骤 3:将手形状双击(双击要快)。出现 Order No.的 GUI 属性。再按 OK。如下图:注意:要在录制状态下按双击,不能单击,用手形状捕捉 GUI 属性时,屏幕左上角也会有提示:6.选中 Order No 的复选框,在输入框中输入 47.再为 Order No 建立一个 GUI Checkpoint。注意与上一次有何不同。8.为 Customer 建立一个 GUI Checkpoint.(捕捉 Customer 对象属性,双击显示属性后,选中 Enable,值为 OFF;默认选中 State,值为 OFF
60、)469.单击 OK,打开4 订单。10.停止录制。11.保存脚本为 Lesson5_1。12.运行该脚本,双击结果窗口中的绿色字体部分,可以看到 GUI Check 记录窗口479. 插入 Bitmap Checkpoint9.1 Bitmap Checkpoint 简介1.你怎样去检查位图(BitBmp)如果你的应用程序包含位图,例如图画或图表,你可以使用 Bitbmp Checkpoint 来检测这些区域。一个 Bitbmp Checkpoint 通过像素来捕获位图像素。去创建一个 Bitbmp Checkpoint 检查点,你可以指定你想要检测的图的一部分,窗口,属性。例如:2.Win
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年宠物养育知识培训
- 2026年毕业生会计实务入门题库
- 2026年中央机关公务员考试申论热点分析
- 基础护理临床应用
- 右心衰竭的护理需求
- 消防保卫岗试题及答案
- 2026年幼儿园跷跷板安全
- 2026年父亲节课件幼儿园教案
- 2026年幼儿园家园沟通小案例
- 2026年认识葱和蒜幼儿园
- 航海学教材文本
- 【市政实务】潘旭 教材精讲班课件 90-第8章-8.2-海绵城市建设施工技术
- SH∕T 3097-2017 石油化工静电接地设计规范
- 2024年重庆市开州区九年级中考第三次模拟考试物理试题
- 2024年河北公务员录用四级联考雄安新区考区公安机关招录人民警察招聘笔试参考题库附带答案详解
- 高斯小学奥数五年级上册含答案-分数裂项
- 智慧的秘密智慧树知到期末考试答案2024年
- 2024年4月自考00258保险法答案及评分参考
- 酒店泡茶服务流程
- 西方现代艺术赏析学习通超星课后章节答案期末考试题库2023年
- 游泳社会体育指导员教学部分
评论
0/150
提交评论