软件测试技术 教学课件 ppt 作者 徐芳 第六章软件测试工具

上传人:E**** 文档编号:89361995 上传时间:2019-05-24 格式:PPT 页数:149 大小:2.62MB
返回 下载 相关 举报
软件测试技术 教学课件 ppt 作者 徐芳 第六章软件测试工具_第1页
第1页 / 共149页
软件测试技术 教学课件 ppt 作者 徐芳 第六章软件测试工具_第2页
第2页 / 共149页
软件测试技术 教学课件 ppt 作者 徐芳 第六章软件测试工具_第3页
第3页 / 共149页
软件测试技术 教学课件 ppt 作者 徐芳 第六章软件测试工具_第4页
第4页 / 共149页
软件测试技术 教学课件 ppt 作者 徐芳 第六章软件测试工具_第5页
第5页 / 共149页
点击查看更多>>
资源描述

《软件测试技术 教学课件 ppt 作者 徐芳 第六章软件测试工具》由会员分享,可在线阅读,更多相关《软件测试技术 教学课件 ppt 作者 徐芳 第六章软件测试工具(149页珍藏版)》请在金锄头文库上搜索。

1、1,软 件 测 试 技 术,2,第六章 软件测试工具,6.5 测试管理工具,6.4.1 Virtual User Generator 6.4.2 Controller 6.4.3 Analysis,6.1 软件测试自动化 6.2 测试工具概述 6.3 功能测试工具WR 6.4 负载测试工具LR,3,6.1 软件测试自动化,软件测试自动化定义 各种测试活动的管理和实施,包括测试脚本的开发和执行,均使用一种自动化测试工具来验证测试的需求。 为什么需要软件测试自动化?,测试效率高 测试过程可完全重现,4,自动化测试是万能的吗?,5,自动化测试的问题: 前期耗用的工作量大 对测试人员的技术水平要求较高

2、 需要对测试脚本(程序)进行维护,6,易手工测试的情况: 手工很容易测试的程序 只需要测试一次的程序 要马上进行测试的程序 要使用直觉和经验才能测试的程序 不可预知结果的程序 易自动化测试的情况: 要经常执行测试的程序 压力测试,7,自动化测试对测试人员的要求: 有编程能力,至少会使用一种高级语言(C/C+、java、VB等) 有一定系统设计的能力,8,自动化测试过程: 制定测试方案 编写、修改、维护测试脚本 测试实施,9,6.2 测试工具概述,测试工具分类: 白盒测试工具 黑盒测试工具 测试管理工具 其他,10,白盒测试工具,针对代码进行测试,测试中发现的缺陷可以定位到代码级。 白盒测试的主

3、要内容包括词法分析 与语法分析、静态错误分析、动态检测等。 对于不同的开发语言,白盒测试工具实现的方式和内容差别较大。 目前测试工具主要支持的开发语言包括:标准C、C、Visual C、 Java、Visual J+等。,11,白盒测试工具简介,IBM公司的白盒测试工具有:,12,Purify,Purify使用了具有专利的目标代码插入技术(OCI:Object Code Insertion)。 Purify在程序的目标代码中插入了特殊的指令用来检查内存的状态和使用情况。 在Windows中,只要运行Purify,填入需要分析的程序及参数,Purify会自动插入检测代码并显示报告。,13,Pur

4、eCoverage,PureCoverage是一个面向VC, VB或者Java开发的测试覆盖程度检测工具,它可以自动检测你的测试完整性和那些无法达到的部分。 PureCoverage的主要功能特性: 即时代码测试百分比显示 未测试, 测试不完整的函数, 过程或者方法的状态表示 在源代码中定位未测试的特定代码行 PureCoverage缺省显示未测试代码为红色,已测试代码蓝色,而死状态行(通常是函数,过程或者方法中的非活动代码部分)黑色。,14,Quantify,Quantify是用来评估产品的性能的工具。用Quantify执行要测的产品,他会搜集各个函数/方法的调用关系和执行时间等。,15,Q

5、uantify,16,其他白盒测试工具,针对不同的编程语言,有不同的进行单元测试的白盒测试工具,例如: JavaJunit PHPUnit PHP VBunit vb Visual Unit C/C+ Dunit Delphi,17,黑盒测试工具,黑盒测试工具包括功能测试工具和性能测试工具。,18,测试管理工具,测试管理工具用于对测试计划、测试用例、测试实施进行管理,19,测试工具的选择 功能适用 运行平台 价格 工具的连续性,20,6.3 功能测试工具WR,人工测试非常无聊且浪费时间与人力。 WinRunner软件可以仿真鼠标的动作和键盘的输入,而不需要人工干预。 WinRunner软件可以

6、加速测试过程。重复使用脚本进行测试。,21,一、录制回放示例,从“开始”“程序”“WinRunner”WinRunner”启动WR软件。 在工具栏上选择”Record”按钮录制脚本。 对被录制的软件进行操作。 按”左Ctrl+F3“按钮停止录制。 在WinRunner中记录下脚本。选择工具栏上”Save(保存)“按钮保存脚本。 选择工具栏上”From Top“按钮从开始运行脚本。,22,二、WR如何识别程序中的GUI对象,一般的Windows应用程序通常由窗口、按钮、list、菜单等组成,在WR中这些窗口、按钮等通称为GUI对象。 WR软件会学习这些GUI对象的属性,如class、label、

7、width等来识别GUI对象。 WR给每一个GUI对象分配一个易理解的逻辑名。,23,set_window (“Login“,15) button_press (“OK“) 窗口的逻辑名是“Login”,按钮的逻辑名是“OK”。 一个对象的物理描述包含了唯一标识对象的属性,每个属性都有对应的值。例如,“OK”按钮有如下物理描述: class: push_button, label: OK 类的属性是“pushbutton”,标签的属性是“OK”。,24,WR提供工具GUI Spy来查看GUI对象的属性。(选择菜单”Tools“”GUI Spy“),25,WinRunner通过以下三种方式学习软

8、件的GUI: 使用RapidTest Script Wizard学习软件每个窗体中所有GUI对象的属性。 通过录制脚本的方法学习被录制的那部分软件中所有的GUI对象的属性。 使用GUI Map Editor学习单个GUI对象、窗体或某个窗体中所有GUI对象的属性,如果软件开发过程中GUI改变了,用户可以使用GUI Map Editor重新学习改变部分的GUI对象。(菜单”Tools“”GUI Map Editor“),26,三、理解GUI Map,WR识别完GUI对象后,把GUI对象存储到GUI Map 文件中。 GUI Map 文件中包含了GUI对象的逻辑名和物理描述。 当运行一个测试,Wi

9、nRunner从测试脚本中读取对象的逻辑名,通过逻辑名查找GUI MAP获取相应的物理描述,转而执行相应操作。 一个GUI Map文件不能包含两个有相同逻辑名的窗体,一个窗体中不能包含有两个相同逻辑名的对象。,27,GUI Map的两种模式,GUI Map File Per Test模式 每次新建测试就自动新建一个GUI Map File 每次保存测试时,GUI Map File自动被保存 每次打开测试时, GUI Map File自动被家载 该模式适合初学者使用 Global GUI Map File模式 该模式可以使多个测试共享一个GUI Map File 该模式需要手动存储GUI Map

10、 File 每次打开测试时,需要手动加载GUI Map File 该模式是WR软件的默认模式 该模式适合熟练的WR用户使用,28,在主菜单中进行如下选择可以进行两种模式的切换。 “TOOLS”General Options”General“选项卡,29,四、录制脚本的两种模式,WinRunner在录制脚本时有两种不同的记录模式: Context Sensitive Analog Context Sensitive 该模式以GUI对象为基础,WR会识别使用者点选的GUI对象。 Analog 该模式WR软件主要录制鼠标移动的轨迹、鼠标的点选、键盘的输入 建议只在录制绘图软件时选择该模式 F2可以进

11、行两种模式切换,30,录制脚本时的建议,录制前关闭不必要的程序和窗口 尽量在录制结束时,回到开始录制的画面,以便测试脚本可以重复运行,31,五、同步点测试,测试程序每次操作的响应时间不一定,有时快,有时慢。此时WR会等待一个固定的时间,若实际测试中应用程序的响应超过了这个固定时间,则测试运行失败。例如: 从数据库取数据 等待一个窗口开启 等待某个状态信息出现 解决办法: 增加WR预设等待时间(缺点脚本执行速度变慢) 在测试脚本中插入同步点,32,增加WR预设等待时间,主菜单中选择“Tools”“General Options”Run”“Settings”,33,插入同步点,在脚本中光标移到需要

12、插入同步点的位置。如button_press(“Insert Order”);后面。 插入同步设置。策略:当“Insert done”的提示在主窗口上方出现时,再让测试继续。 选择”Insert”“Synchronization”“For Object/window Bitmap”。,34,插入同步点,将手形光标移到应用程序中去捕获”Insert Done“的位图信息。,35,插入同步点,脚本中出现对象等待的函数,等待图形出现,等待时间为1s,把“1”改为“10”。再次运行脚本。,36,六、GUI对象检查点,通常运行一个应用程序,是通过GUI对象的行为来测定功能是否与需求一致。 检查GUI对象

13、可以通过创建GUI checkpoints来实现,一个GUI Checkpoints可以检查一个GUI对象属性的行为。 检查点可以检查在应用程序的运行中是否出现了预期的对象或窗口。比如,按钮是否可用,单选按钮是否选中等。 插入检查点选择”Insert”“GUI Checkpoints”“ForObject/window Bitmap”。在录制脚本中进行插入。,37,GUI对象检查点的一些建议,为了让测试通宵运行,可以设置让WR检查到Checkpoint的不匹配项时不弹出信息框。选择“ToolsGeneral OptionSettings”,清除“Breaken when verificatio

14、n fails”的复选框。这将使测试在运行时不会中断。 捕捉对象属性时,单击为直接在脚本中插入Obj_GUI_Check语句;双击为显示选中对象的属性,查看选择后再确定是否插入OBJ_GUI_Check语句。,38,七、建立数据驱动测试,实际测试中通常需要用不同的测试数据对系统进行测试。而录制的脚本中数据是固定的。 可以采用数据驱动的方式使每次脚本运行时使用不同的测试数据。即所谓的参数化测试。(菜单“Tools”“DataDrive Wizard”),39,使用文件Default.xls中存放的数据做测试参数化,40,选择需要参数化的数据,41,选择显示表中的数据,42,43,通讯簿窗口的标题

15、,随着输入数据而变化,而GUI Map中记录的是录制时的属性。 采用通配符可以解决该问题。用通配符来代替GUI Map中label的属性。 在WR中通配符的格式为:!(内容).* 或!.*(内容)。如:!Form.*,表示为“Form”+任何值;!.*Form,表示为任何值+“Form”。 通配符中“.”代表任何单一字符;“.*”代表任何字符组成的字符串。 Label原有属性“张三属性”改为“!.*属性”。,使用通配符,44,6.4 负载测试工具LR,单用户测试主要侧重于系统组件的功能和用户界面,而应用程序测试则侧重于整个系统的性能和可靠性。 一个典型的应用程序测试方案的情况可能是星期一早上有

16、 1000 个用户同时登录到系统上。该系统的响应时间是多少?系统会崩溃吗?要回答这些问题,45,Loadrunner负载测试软件 创建虚拟用户 创建真实负载 实时监测 分析结果,46,LR软件概述,LR的版本分为Windows和Linux平台。目前常见的是LR7.6、LR7.8、LR8.0 LR软件本身分为Virtual User Generator(虚拟用户生成器)、Controller(控制器)、Analysis(分析器)三部分,可以分别安装在不同的机器上,也可全部在一台机器上。 License问题:LR的License区分VU类型,一般按协议和时间、用户数量来区分。,47,6.4.1 Virtual User Generator,LoadRunner 用虚拟用户或 Vuser 代替实际用户。 增加 Vuser 的数量可以增大系统上的负载。 LoadRunner 拥有各种 Vuser 类型,每一类型都适合于特定的负载测试环境。如电子商务:F

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号