简介:关于测试参数方面的的相关大学硕士和相关本科毕业论文以及相关测试参数论文开题报告范文和职称论文写作参考文献资料下载。
(广东女子职业技术学院 应用设计系,广东 广州 511450)
【摘 要】在使用QTP进行自动化测试时,数据驱动起着举足轻重的作用,进行数据驱动关键是实现脚本的参数化.笔者结合实例总结和归纳了多种进行数据驱动参数化的方式.
【关键词】QTP;自动化测试;参数化
0 引言
自动化测试是使用软件来控制测试执行过程,需要在适当的时间使已形式化的手工测试过程自动化,最好的自动化测试工具是能够将工具与测试需求达成一致,并且提供高度可自定义的工作流程和跟踪报告能力[1].
Mercury QuickTest Professional(简称QTP)是企业级自动化测试工具,已被惠普公司收购,QTP主要适用于功能和回归测试的自动化,采用关键字驱动的理论来简化对测试用例的创建和维护,用户可以直接录制屏幕上的操作流程,自动生成功能测试或回归测试脚本.当脚本录制完成,并不能完全立即使用,主要原因是录制的脚本只能覆盖一条测试用例,并且对数据的依赖性很强,更换数据后就会出错,这种线性的自动化测试方式缺点很明显,需要对脚本进行优化和增强.
适当调整和增强测试脚本,提高脚本的灵活性,数据驱动方式的测试脚本是解决这类问题的重要方式.数据驱动的测试方法要解决的核心问题是把数据从测试脚本中分离出来,从而实现测试脚本的参数化[2].
1. 数据驱动测试的步骤
数据驱动测试一般按以下步骤进行[3]:
1.)参数化测试数据,绑定到数据表格中的各个字段;
2.)在表格中编辑多行的测试数据,取决于测试用例及测试覆盖率的需要;
3.)设置迭代次数,每次迭代选择一行数据.
2. 参数化方法
3d测试参数:Vary_黑石_客厅实例_设定渲染测试参数
2.1 DataTable实现参数化
本测试是测试飞行程序的登录用户名和论文范文,将多组测试数据放在DataTable的Global或当前Action表中.DataTable是一种最容易实现参数化的方式.
2.2 环境变量实现参数化
参数化在“Value Configuration Option”对话框中设置“Name”和“Value”框中进行设置,环境变量实现参数化当在同一个Test中多个Action调用同一个参数时,使用环境变量作为参数是一种很好的方式,但每个参数值都要指定,如果测试多组数据工作量就大了.
2.3 使用文本文件实现参数化
先在脚本根目录中创建txt文件,将内容输入文件中,输入格式如图4.
QTP脚本代码如下:
Const ForReading等于1
FilePath 等于 Environment("TestDir")&,"\login.txt" &,acute,取得存储数据的txt文件的路径
Set FSO 等于 CreateObject("Scripting.FileSystemObject")
Set DataFile 等于 Fso.OpenTextFile(FilePath,ForReading,False)
Do while DataFile.AtEndOfLine<,>,true
systemutil.Run "D:\Program Files\HP\QuickTest Professional\samples\flight\app\flight4a.exe","","",""
ReadString 等于 DataFile.ReadLine &,acute,读取txt文件中的行记录
DataStr 等于 split(ReadString,",") &,acute,将行记录以逗号为分隔符分开,并存入数组中
Dialog("Login").WinEdit("Agent Name:").Set datastr(0) &,acute,输入用户名
Dialog("Login").WinEdit("Password:").SetSecure datastr(1) &,acute,输入论文范文
Dialog("Login").WinButton("OK").Click
If Dialog("Flight Reservations").Exist (5) then
Dialog("Flight Reservations").winbutton("确定").Click
Dialog("Login").winbutton("cancel").Click
else
Window("Flight Reservation").Close
end if
wait(3)
loop
DataFile.close
do-loop结构是为了使多组数据循环执行下去,直到文件结尾,if-else-endif结构是判断对话框“Flight Reservations”的存在与否来推断用户和论文范文是否输入错误的情况处理,让循环能继续下一组数据的验证.
2.4 使用excel表实现参数化
先在脚本根目录中创建xls文件,将内容输入文件中,输入格式如图5.
QTP脚本代码如下:
datatable.ImportSheet "login.xls","login_sheet","Action1"
&,acute,第一个参数是源文件,第二个参数是源文件工作表名称,第三个参数是目的路径表名称
Dim i,rowcount
i等于1
rowcount等于datatable.GetSheet ("Action1").GetRowCount
Do while(i<,等于rowcount)
systemUtil.Run "D:\Program Files\HP\QuickTest Professional\samples\flight\app\flight4a.exe","","",""
datatable.SetCurrentRow (i)
Dialog("Login").WinEdit("Agent Name:").Set DataTable("user", dtLocalSheet)
Dialog("Login").WinEdit("Password:").Set DataTable("pwd", dtLocalSheet)
Dialog("Login").WinButton("OK").Click
If Dialog("Login").Dialog("Flight Reservations").Exist (5) then
Dialog("Login").Dialog("Flight Reservations").winbutton("确定").Click
Dialog("Login").winbutton("cancel").Click
else
Window("Flight Reservation").Close
end if
i等于i+1
Loop
datatable.ImportSheet语句是导入Excel外部文件到DataTable的Action1中,do-loop结构依然是为了使多组数据循环执行下去.
3.5 使用XML文件实现参数化
先在脚本根目录中创建XML文件,将内容输入文件中,输入格式如图6.
QTP脚本代码如下:
set xmldoc等于CreateObject("microsoft.xmldom")
TestPath 等于 Environment("TestDir")&,"\ login.xml"
xmldoc.load(TestPath)
Set Root等于xmldoc.documentElement
For i 等于 0 To Root.childNodes.Length-1
systemutil.Run "D:\Program Files\HP\QuickTest Professional\samples\flight\app\flight4a.exe","","",""
Set TestCases 等于 Root.childNodes.Item(i)
For j 等于 0 To TestCases.childNodes.Length-1
Set TestCase 等于 TestCases.childNodes.Item(j)
If cstr(TestCase.nodeName)等于"UserName" Then
Dialog("Login").WinEdit("Agent Name:").Set TestCase.text
end if
If cstr(TestCase.nodeName)等于"PW" Then
Dialog("Login").WinEdit("Password:").SetSecure TestCase.text
End If
Next
Dialog("Login").WinButton("OK").Click
If Dialog("Login").Dialog("Flight Reservations").Exist (5) then
Dialog("Login").Dialog("Flight Reservations").winbutton("确定").Click
Dialog("Login").winbutton("cancel").Click
else
Window("Flight Reservation").Close
end if
wait(3)
Next
Set root等于nothing
Set xml等于nothing
QTP脚本中用到了双层for语句,外层for语句用于多组数据的循环,内层for用于同组数据多个字段间的循环.
4. 结论
通过参数化方式,从外部数据源或数据产生器读取测试数据,从而扩大测试的覆盖面,提高了测试的灵活性.除了以上方式实现参数化,还可以使用数据库表作为数据源.在实际的测试工作中,我们可以根据需要灵活组合方式来进行使用.
【参考文献】
[1]王磊.关键字驱动的自动化测试框架设计与实现[J].电子测试,2010,41(8):91-97.
[2]王蕾.基于数据驱动的软件自动化测试框架系统的研究与实现EJ1[J].软件导刊,2009,38(6):33-34.
[3]陈能技.QTP自动化测试技术进阶[M].北京:电子工业出版社,2010.
[责任编辑:谢庆云]
总结:本论文主要论述了测试参数论文范文相关的参考文献,对您的论文写作有参考作用。
3d测试参数引用文献:
[1] 经典测试计量技术及仪器论文题目 测试计量技术及仪器专业论文题目如何拟
[2] 比较好写的测试论文选题 测试毕业论文题目如何定
[3] 软件测试硕士学论文题目 软件测试硕士论文标题怎么定