使用QTP(自动化测试)对简易计算器做数据驱动测试

QTP(自动化测试)
1.测试目的集成测试测试组合单元时出现的问题。通过使用要求在组合单元前测试每个单元并确保每个单元的生存能力的测试计划,可以知道在组合单元时所发现的任何错误很可能与单元之间的接口有关。这种方法将可能发生的情况数量减少到更简单的分析级别。一个有效的集成测试有助于解决相关的软件与其它系统的兼容性和可操作性的问题。
数据驱动测试的步骤:
(1)参数化测试步骤的数据,绑定到数据表格中的某个字段。
(2)编辑数据表格,在表格中编辑多行测试数据(取决于测试用例以及测试覆盖率的需要)
(3)设置迭代次数,选择数据行,运行测试脚本每次迭代从中选择一行数据。使用了QTP提供的一些功能特性,让这些步骤的实现得以简化。例如,使用“Data Table”视图来编辑和存储参数,

2.测试脚本第一次录制脚本的脚本代码图:

使用QTP(自动化测试)对简易计算器做数据驱动测试_第1张图片

使用QTP(自动化测试)对简易计算器做数据驱动测试_第2张图片

Browser("My JSP 'index.jsp' starting").Page("My JSP 'index.jsp' starting").WebEdit("num1").Set "1"
Browser("My JSP 'index.jsp' starting").Page("My JSP 'index.jsp' starting").WebRadioGroup("flag").Select "1"
Browser("My JSP 'index.jsp' starting").Page("My JSP 'index.jsp' starting").WebEdit("num2").Set "1"
Browser("My JSP 'index.jsp' starting").Page("My JSP 'index.jsp' starting").WebButton("计算").Click
Browser("My JSP 'index.jsp' starting").Page("My JSP 'index.jsp' starting_2").Sync
Browser("My JSP 'index.jsp' starting").CloseAllTabs
修改后的脚本代码:
Browser("My JSP 'index.jsp' starting").Page("My JSP 'index.jsp' starting").WebEdit("num1").Set  DataTable.Value("A","Global")
//设置检查点
Browser("My JSP 'index.jsp' starting").Page("My JSP 'index.jsp' starting").WebEdit("num1").CheckProperty "value", DataTable.Value("D","Global")
Browser("My JSP 'index.jsp' starting").Page("My JSP 'index.jsp' starting").WebRadioGroup("flag").Select DataTable.Value("B","Global")
Browser("My JSP 'index.jsp' starting").Page("My JSP 'index.jsp' starting").WebEdit("num2").Set  DataTable.Value("C","Global")
Browser("My JSP 'index.jsp' starting").Page("My JSP 'index.jsp' starting").WebButton("计算").Click
Browser("My JSP 'index.jsp' starting").Page("My JSP 'index.jsp' starting_2").SyncBrowser("My JSP 'index.jsp' starting").CloseAllTabs

3测试过程及结果
(1)使用QTP对基于Java语言开发的计算器web程序的测试脚本的录制,点击record图标,在弹出的提示框中输入要进行录制的网页,并点击确定
使用QTP(自动化测试)对简易计算器做数据驱动测试_第3张图片
(2)在界面中,输入第一个数字后,选择要使用使用的功能属性,加减乘除(1234)再输入第二个数据,然后,点击计算按钮,运算结果会以静态文本的形式显示,点击网页关闭按钮,点击stop停止录制。录制的测试脚本如图,对于这样一个测试脚本,仅能检查特定数据的正确性,如果希望测试脚本对多个记录的正确性都能检查,则需要进行必要的参数化。

使用QTP(自动化测试)对简易计算器做数据驱动测试_第4张图片
(3)在关键字视图中对测试脚本进行参数化。选择“num1”所在的测试步骤行,点击“Value”列所在的单元格,单击单元格旁边的“<#>”按钮,在这个界面中,选择“Parameter”,在旁边的下拉框中选择“Data Table”,在“Name”中输入参数名,也可接受默认名,在“Location in Data Table”中可以选择“Global sheet”,也可以选择“Current action sheet(local)”,它们的区别是参数存储的位置不同。也可以使用直接修改脚本代码的方式,本文是直接修改了部份脚本代码,设置了检查点

使用QTP(自动化测试)对简易计算器做数据驱动测试_第5张图片
(4)单击“OK”按钮,在关键字视图中可看到,“Value”值已经被参数化
(5)这时,选择菜单“View | Data Table”,则可看到如图所示的界面。修改脚本代码后如图,A列为输入的数据1,B列为选择的功能,C列为输入的数据2,可以点击FILE,SETTING,来定义要运行的行数。对加减乘除设计测试用例,运行结果为

使用QTP(自动化测试)对简易计算器做数据驱动测试_第6张图片

使用QTP(自动化测试)对简易计算器做数据驱动测试_第7张图片
使用QTP(自动化测试)对简易计算器做数据驱动测试_第8张图片
(6)由于最终结果以静态形式显示无法进行测试,插入检查点,对输入值进行测试,设置D列为预期输入值
使用QTP(自动化测试)对简易计算器做数据驱动测试_第9张图片
(7)点击run按钮,并点击确定
使用QTP(自动化测试)对简易计算器做数据驱动测试_第10张图片
(8)生成测试报告为
使用QTP(自动化测试)对简易计算器做数据驱动测试_第11张图片
(9)对第二项测试用例进行修改后
使用QTP(自动化测试)对简易计算器做数据驱动测试_第12张图片
使用QTP(自动化测试)对简易计算器做数据驱动测试_第13张图片
QTP结果分析
本次测试是使用QTP自动化测试工具进行数据驱动测试,测试脚本的开发和维护是自动化测试的重要环节,适当地调整和增强测试脚本,能提高测试脚本的灵活性,增加测试覆盖面,以及提高应对测试对象变更的能力。数据驱动方式的测试脚本开发是解决这类问题的重要手段。本次测试通过在自动化测试过程中使用数据驱动的测试脚本开发方式,对测试脚本进行参数化,包括使用QTP的DataTable参数化等脚本参数化的方法。数据驱动测试方法:数据驱动的测试方法要解决的核心问题是把数据从测试脚本中分离出来,从而实现测试脚本的参数化。自动化测试对录制和编辑好的测试步骤进行回放,这种是线性的自动化测试方式,其缺点就是测试覆盖面比较低。测试回放的只是录制时做出的界面操作,以及输入的测试数据,或者是脚本编辑时指定的界面操作和测试数据。而数据驱动测试可以把测试脚本中的测试数据提取出来,存储到外部文件或数据库中,在测试过程中,从文件动态读入测试数据。

你可能感兴趣的:(软件测试)