QTP数据驱动测试的方法的探讨.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
QTP数据驱动测试的方法的探讨

QTP数据驱动测试的方法的探讨   【摘 要】在使用QTP进行自动化测试时,数据驱动起着举足轻重的作用,进行数据驱动关键是实现脚本的参数化。笔者结合实例总结和归纳了多种进行数据驱动参数化的方式。   【关键词】QTP;自动化测试;参数化   0 引言   自动化测试是使用软件来控制测试执行过程,需要在适当的时间使已形式化的手工测试过程自动化,最好的自动化测试工具是能够将工具与测试需求达成一致,并且提供高度可自定义的工作流程和跟踪报告能力[1]。   Mercury QuickTest Professional(简称QTP)是企业级自动化测试工具,已被惠普公司收购,QTP主要适用于功能和回归测试的自动化,采用关键字驱动的理论来简化对测试用例的创建和维护,用户可以直接录制屏幕上的操作流程,自动生成功能测试或回归测试脚本。当脚本录制完成,并不能完全立即使用,主要原因是录制的脚本只能覆盖一条测试用例,并且对数据的依赖性很强,更换数据后就会出错,这种线性的自动化测试方式缺点很明显,需要对脚本进行优化和增强。   适当调整和增强测试脚本,提高脚本的灵活性,数据驱动方式的测试脚本是解决这类问题的重要方式。数据驱动的测试方法要解决的核心问题是把数据从测试脚本中分离出来,从而实现测试脚本的参数化[2]。   1 数据驱动测试的步骤   数据驱动测试一般按以下步骤进行[3]:   1)参数化测试数据,绑定到数据表格中的各个字段;   2)在表格中编辑多行的测试数据,取决于测试用例及测试覆盖率的需要;   3)设置迭代次数,每次迭代选择一行数据。   2 参数化方法   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 取得存储数据的txt文件的路径   Set FSO = CreateObject(Scripting.FileSystemObject)   Set DataFile = Fso.OpenTextFile(FilePath,ForReading,False)   Do while DataFile.AtEndOfLinetrue   systemutil.Run D:\Program Files\HP\QuickTest Professional\samples\flight\app\flight4a.exe,,,   ReadString = DataFile.ReadLine 读取txt文件中的行记录   DataStr = split(ReadString,,) 将行记录以逗号为分隔符分开,并存入数组中   Dialog(Login).WinEdit(Agent Name:).Set datastr(0) 输入用户名   Dialog(Login).WinEdit(Password:).SetSecure datastr(1) 输入密码   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表实现参数化   先

文档评论(0)

3471161553 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档