QTP在自动化测试中的应用

软件研发与应用SOFTWARE DEVELOPMENT&APPLICATION
QTP在自动化测试中的应用
梁琛
(电信科学技术第一研究所有限公司,上海200032)
摘要:针对电话自动拨测系统项目持续时间长、系统版本变更快、需求比较稳定的特点,把QTP自动化测试工具引入回归测试中,这样可以提高测试效率,缩短回归测试的时间。在系统版本基本稳定后,根据系统的特征制定相应的测试计划,录制测试脚本并对脚本进行优化和调试,运行测试脚本,对所得到的测试报告进行分析和总结。
关键词:QTP测试工具;自动化测试;回归测试
1概述
专用通信网的主叫号码出于安全考虑进行了特殊设置,但可能会被运营商错误拦截,因此需要定期对全国所有区号方向的3大运营商电话进行拨打测试,以确保消除该隐患。使用人工拨打方式来完成这项工作,需投入大量的人员和时间,不但费时费力,还容易出现号码遗漏等人为因素造成的问题,对排查结果也不能进行完整、直观的统计管理。
为了解决上述问题,设计并研发了“电话自动拨测系统”,它具有自动拨打、自动录音、记录追踪、报表分析、历史查询等功能,该系统稳定可靠,能满足专用通信网络的日常保障和管理工作需要。
电话拨测系统中需要测试的号码数量大且版本更新快,仅使用功能测试会给从业人员带来许多不必要的重复任务,消耗人力和时间,在回归测试中引入QTP工具可以很好地解决这个问题,将繁琐的任务自动化,从而提高准确性和工作效率。
2电话自动拨测系统的特点
电话自动拨测系统由一个装有8路模拟语音卡的4U机箱组成,通过接入6路环路中继实现自动拨测功能,它由实时拨测、历史拨测、拨测报表、告警管理、端局管理以及系统管理6个模块组成,主要实现设备管理、拨测调度、拨测过程跟踪、线路监测、智能路由、故障告警、统计分析和大屏监视等功能。
由于该系统需要拨叫的号码数量大,仅通过手工的方式对其进行重复测试需要消耗大量的时间以及测试人员的精力。另外,拨测系统项目持续周期长,需求变更不频繁,系统中不存在大批量第三方控件,这些特征都适合引入自动化测试来推动项目进度和提高工作效率。3QTP简介
QTP是Quick Test Professional的简称,是一种可以进行自动化测试的工具,主要用于回归测试和同一
软件新版本的测试。该工具能提供很多插件,如.NET,Ja­va,SAP和Terminal Emulato等。QTP也支持所有常用环境的功能测试,包括Windows、Web、.Net、Visual Basic、ActiveX等,因此该工具被广泛使用。
3.1QTP的优势
自动化测试工具种类多,选择面广,目前常见的自动化测试工具有QTP、SilkTest、WinRunner、Watir、Rational Robot、TestComplete、RFT等。由于QTP具有同时支持C/S和B/S测试系统、对象识别强、支持录制和对象库功能、能与其他测试工具联动、回放速度快和编写脚本方便等特点,已经成为当前主流的自动化测试工具。
电话自动拨测系统是C/S架构,QTP支持C/S、具有录制回放功能和易于编写脚本的特点适合作为电话拨测系统的测试工具,故引入QTP为该系统做回归测试。
3.2QTP自动化测试过程
QTP提供了测试流程来帮助工作人员进行自动化测试工作,测试过程分为5个步骤,如图1所示。
「制定测试计划优化测试脚本]分析测试结果
L~»|录制测试脚本|执行测试脚本|
图1QTP自动化测试过程
3.2.1制定测试计划
测试计划的质量和以后的工作顺利进展有着密切的
作者简介:梁琛(1987-),女,硕士,工程师,研究方向:功能和自动化测试
联系,能越早地把各种情况都考虑在计划中对自动化测 试项目的展开越是有益。实施测试前,应将需
要使用
QTP 自动化测试的功能点逐条列出,明确软件的输入条
件和期望的输出结果,然后再继续进行下面4个步骤。
3.2.2录制测试脚本
启动QTP 自动化测试工具,选择插件类型并进入主 界面,在新建的测试中,对应用程序的路径进行设置并在
菜单栏中点击“Record ”。在显示的录制工具条中可以选
择录制模式,QTP 的录制模式有正常、模拟和低级录制3
种,也可以添加同步点、检查点等。当停止录制脚本后,
会自动返回视图界面,此时可以查看录制的脚本内容。3.2.3优化测试脚本
录制脚本后进行回放会发现存在一些bug ,需要进一
步对其进行优化和调试。录制后脚本中的测试步骤以及
测试流程都可以根据实际需求进行修改和调整,如增加 检查点,QTP 检查点类型有标准检查点、图像检查点、
文本检查点和数据库检查点等。除此之外,还可以通过
参数化的功能,使多组不同的数据驱动整个测试过程。
对脚本进行编辑和优化后,还需要进行调试工作,以去
除脚本中存在的错误。3.2.4执行测试脚本
在菜单栏中点击“Run"按键或者使用快捷键F5,
QTP 会按脚本语句的顺序依次执行,若设置了检查点会
对其进行验证,如果进行了参数化设置,会用实际数值
代替参数值。脚本运行完毕后,可以查看测试报告。3.2.5分析测试结果
每次脚本运行后,QTP 都会将相应的图像化测试结
果显示出来,其中包括测试名称、测试具体的开始时间 和结束时间、测试通过/不通过/警告的状态以及脚本运
行的迭代次数等。对测试报告中的数据进行详细分析和
解读,可以出被测软件中存在的问题。4 QTP 测试的实例分析4.1制定测试计划
根据电话拨测系统的需求规格说明书,对系统功能
和业务流程进行梳理和分析,确定系统中明陛功能点适合
使用QTP 工具并明确测试的输入条件和预期的输出结果。
系统由实时拨测、历史拨测、拨测报表、告警管
理、端局管理以及系统管理6个模块组成,其中系统管
理是其他模块的前提输入条件,是电话拨测系统中重要
的部分。该模块中的系统号码场景配置存有大量的拨测 数据,适合使用QTP 来进行自动化测试,因此选择系
统号码场景配置作为自动化测试的输入条件。4.2 录制测试脚本
QTP 可以通过录制和编程两种方式来创建测试脚
本,考虑到录制后再修改脚本的方式工作效率更高,故
采用录制的方式来进行初始QTP 脚本的创建,整个录 制系统功能转化为测试脚本的流程按照以下步骤进行。
(1) 在QTP 工具中新建一个Test,由于拨测系统是
C/S 架构的,因此使用Windows  Applications 模式来进行
录制,在Record  and  Run  Settings 中设置系统客户端可 执行程序所在的位置。
(2) 在QTP 菜单中点击录制按键,在系统登录界
面中输入正确的用户名和密码并点击“登录”按键,进
入系统主界面后, 在菜单栏中点击系统管理图标, 选择 拨测配置下的号码场景配置。
(3) 在系统右侧窗口中点击“增加”按键,在添加
号码场景弹框中输入号码组编号、拨打号码和优先级并
点击“确认”按键,添加号码场景的弹框如图2所示,
最后在系统界面右上角点击“退出”按键。
图2添加号码场景弹框示意图
(4)在QTP 的录制工具栏中点击停止,对录制的
测试脚本进行回放,若未能正常回放,需要对该脚本进
行排错。
(5)回放时出现控件未识别的错误时,使用Add  Objects  to  Local 把QTP 不能识别的对象加入对象库中,
对象库如图3所示。
0 B  TestObjects
:曰口添加号码场景
0 TEdit 4 TEdit  20拨打号码
$号码组编号
O 取消°嘯走
4优先级
1曰□系统登录
O 登录
帆聲⑴
:s  □中南海电信局电话自动拨测系统“
0 TdxBarControl 0 TdxNavBar 0增加
图3对象库示意图
50 卅k
软件研发与应用
4.3优化测试脚本
4.3.1脚本参数化
经过录制的初始脚本只是添加了一个拨打号码,但实际需要添加的是大量的数据,因此需要对该脚本进行参数化处理。把QTP的界面切换到Keyword View 关键字视图,对号码组编号、拨打号码以及优先级这3项进行参数化配置,以号码组编号为例,点击该值右侧的“<#〉”按钮,显示的设置弹框如图4所示,选择参数DataTable,输入名称group_number,勾选“Global sheet”并点击“OK”按钮。
图4参数化值配置选项弹框
汽车指纹防盗在QTP界面下侧的DataTable的Global标签页中会自动生成group_number,dial_number和priority3个标题,现以20组拨测数据为例,在DataTable中右键选择File-Import From File,导入存有拨测数据的Excel文件,导入数据后的显示如图5所示。
Data
H6
qroup number dial number priority D E
11010100003
21010100103
31010100860
41010123450
51***********0
61020100003
71020100860
81020123450
91020123690
101021100000
111021123690
121022100000
131022100100
141022100860
151022123450
<;卜\Global人Actionl~j"-
图5导入数据的DataTable
4.3.2插入检查点
检查点是为了验证所测试的程序能否达到预期功能,它是将指定属性的当前数据与期望数据进行比较所得。QTP支持多种类型的检查点,如标准检查点、位图检查点、文本检查点、表检查点和数据库检查点等。
在添加号码场景的弹框中,如果需要检查“添加号码场景”的标题是否存在,可以添加文本检查点。在QTP中对该标题右键选择“Insert Text Checkpoint",显示文本检查点的属性弹框,如图6所示。添加后专家视图中会增加相应的文本检查点的代码。
图6文本检查点的属性弹框
系统登录窗口的左侧有一个电话的标志,要检验这个图片是否正常显示,就需要插入位图检查点。在QTP 中对该图片右键选择“Insert Text Checkpoint”,显示位图检查点的属性弹框,如图7所示。
图7位图检查点的属性弹框
在属性弹框中选择电话标志的区域后,点击OK按钮,专家视图中会增加相应的位图检查点的代码。
4.4分析测试结果
对测试脚本进行编辑和优化后再次回放脚本,
外加电流阴极保护当脚
本运行结束时,QTP 会自动显示测试结果,如图8所示。
Iterations
Steps
Current  Run  "Passed
扁平足鞋垫
0 Failed  0 Failed 0 Warnin g s 0 Warnings 20 Passed
20 Passed
图8测试结果示意图
从运行结果的图形化界面中可以看出20次迭代和柚子去皮机
运行步骤的状态均为“通过”,表示所有检查点都已经通
过测试。要查看其中一个迭代的运行情况,可以在QTP
左侧树形结构中选择某一个iteration ,右侧窗口会显示它
的详细信息,如图9所示,其结果也显示为“通过”。
图9单个迭代的详细信息
5结语亲贝
基于QTP 的电话拨测系统测试方法实现了拨测数
据的添加功能,实例中通过QTP 工具自动添加了 20条
号码场景的数据,少量数据的添加对于手工测试和自动
化测试的区别不是很明显,但是数据量达到成百上千条
时,自动化测试工具的优势便会显现出来。QTP 执行繁 琐的回归测试可以节约测试成本,提高测试效率。另
外,QTP 脚本能反复使用,缩短了测试周期,也提高了
软件版本的质量。
参考文献
[1] 余杰,赵旭斌•精通QTP 自动化测试技术领航
[M].北京:人民邮电出版社,2012.
[2] 夏晶.基于QTP 的功能自动化测试框架的研究与应
用[J].武汉科技大学,2010, 29 (3) : 20-21.[3] 陈能技.QTP 自动化测试进阶[M].北京:电子工
业出版社,2010.
[4] 黄彪贤,熊建斌,李振坤.金融软件功能自动化测
试的分析及应用[J] •计算机工程与设计,2012,
33 ⑵:787-792.
坐 _理 坐 _业 4 -理 9 4 ,2 卩 -3 化 9 -亠 $0 -亠 艸 垃 业 亚 3 一业一亠 9 _理 3 一业 坐 _业 9 一理 卩 -3 -亠 9
9 业-亠 W  垃 肚 £0 -业
抗干扰滤波器(上接第32页)
cell.height 都只是单元格合并前的行高值。
根据以上的分析,只有把各单元格的列宽和行列号
都记录下来,才能完整地记录Word 表格中单元格的合 并信息。代码如下:
Set  myeell  = myword.Tables(1).Cell(1, 1)Do  While  (Not  (myeell  Is  Nothing))
myeell.Seleet
tablesize(myeell.RowIndex, myeell.ColumnIndex)
=myeell.Range.Text
tmpstr  = tmpstr  & "(野 & str(mycell.RowIndex) & ",” & str  (myeell.ColumnIndex )& 野"& str(myeell. Width) & “)”
Set  myeell  = myeell.Next
Text_info.Text  = Text_info.Text  & tmpstr  & vbCrLf
(上接第42页)
和m 分别为相应字符串的长度。在未来的研究中,可以
采用其他优化算法来降低算法的时间复杂度,如KMP 等。
参考文献
[1]王曙燕,王春梅.数据结构与算法[M].北京:人
民邮电出版社,2013: 73-96.
tmpst  r  =""Loop
4结语
单元格指针寻址方式和单元格合并信息获取程序段
应用到Word 自动阅卷系统中,经过一学期运行测试,
评卷结果没有出现错判和误判。
参考文献
[1] 潘夏福.基于网络的Office 自动阅卷系统设计与实
现电脑编程技巧与维护,2013, (06) : 118.
[2] Microsoft.Cell. Next  属性(Word) I  Microsoft  Docs.[3] Microsoft. Cell  方法(Word) I  Microsoft  Docs.
[4] Microsoft.单兀格 RowIndex  属性(Word) I  Microsoft
Docs.
[5] Microsoft.ColumnIndex  属性(Word) I  Microsoft  Docs.[2] 王曙燕,王春梅.C 语言程序设计教程[M].北京:
人民邮电出版社,2014: 13-34.
[3] 张德慧,周元哲.C++面向对象程序设计[M].北
京:科学出版社,2005: 16.
[4] 赵继民.利用图解法解碱基计算题[J].生物学教
学, 2009, 34 (8) :
47-49.

本文发布于:2024-09-24 15:23:58,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/276903.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:测试   脚本   进行   号码   检查点
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议