QTP脚本?测试参数限制
作者:网络转载 发布时间:[ 2014/5/22 10:08:33 ] 推荐标签:QTP 自动化测试工具
第三步,因为测试参数是一个繁杂的过程,有很多种组合方式,而且每个参数输入框都要求输入一遍,但是好在参数输入框的规则都是一样的,比如不能输入符号,字母,负数,小数,空格等等,除此之外还有范围限制,于是我采用数据驱动测试的方法来做这个脚本。先写好输入参数的过程:
Dialog("App(1.0.1.0)").WinEdit("MINS").Set ”1“
Dialog("App(1.0.1.0)").WinEdit("MINX").Set ”1“
Dialog("App(1.0.1.0)").WinEdit("MAXS").Set ”2“
Dialog("App(1.0.1.0)").WinEdit("MAXX").Set ”2“
Dialog("App(1.0.1.0)").WinEdit("IR").Set ”1“
Dialog("App(1.0.1.0)").WinEdit("OR").Set ”2“
|
然后根据数据驱动测试的步骤设置参数根据table中的值来输入,详情参见我博客《QTP:数据驱动测试》,Expert View的显示如下:
Dialog("App(1.0.1.0)").WinEdit("MINS").Set DataTable("minS", dtLocalSheet)
Dialog("App(1.0.1.0)").WinEdit("MINX").Set DataTable("minX", dtLocalSheet)
Dialog("App(1.0.1.0)").WinEdit("MAXS").Set DataTable("maxS", dtLocalSheet)
Dialog("App(1.0.1.0)").WinEdit("MAXX").Set DataTable("maxX", dtLocalSheet)
Dialog("App(1.0.1.0)").WinEdit("IR").Set DataTable("IR", dtLocalSheet)
Dialog("App(1.0.1.0)").WinEdit("OR").Set DataTable("OR", dtLocalSheet)<br>Dialog("App(1.0.1.0)").WinButton("应用参数").Click ' 点击开始应用参数
|
我设置了2种参数范围边界的数据,9种服务端会拒绝应用的参数组合,30种客户端限制的参数类型组合。
第四步,对测试结果进行判断并显示在QTP生成的测试报告中:
开始我是这么写的:
If Dialog("App(1.0.1.0)").Dialog("提示").Exist(3) Then
Dialog("App(1.0.1.0)").Dialog("提示").WinButton("应用参数成功-确定").Click ' 应用成功
reporter.ReportEvent micDone,"yes","前2个:可以应用成功"
else
reporter.ReportEvent micFail, "yes"," 前2个:服务端拒绝应用"
End If
If Dialog("App(1.0.1.0)").Dialog("错误").Exist(3) Then
Dialog("App(1.0.1.0)").Dialog("错误").WinButton("服务器不支持该参数-确定").Click
reporter.ReportEvent micDone,"server no","中间9个:服务端拒绝应用"
else
reporter.ReportEvent micFail,"server no", "中间9个:服务端居然应用了"
End If
If Dialog("App(1.0.1.0)").Dialog("警告").Exist(3) Then
Dialog("App(1.0.1.0)").Dialog("警告").WinButton("客户端不支持该参数-确定").Click
reporter.ReportEvent micDone,"client no","后30个:DTC拒绝应用"
else
reporter.ReportEvent micFail,"client no", "后30个:DTC居然应用了"
End If
|
运行之后发现,每一行参数的结果都有2个fail,因为我设置的三个主if是并列关系!符合其中一种情况之后,另外2种情况都会失败。
于是,我再写成这样的:
If Dialog("App(1.0.1.0)").Dialog("提示").Exist(3) Then
Dialog("App(1.0.1.0)").Dialog("提示").WinButton("应用参数成功-确定").Click ' 应用成功
reporter.ReportEvent micDone,"yes","前2个:可以应用成功"
elseif Dialog("App(1.0.1.0)").Dialog("错误").Exist(3) Then
Dialog("App(1.0.1.0)").Dialog("错误").WinButton("服务器不支持该参数-确定").Click
reporter.ReportEvent micDone,"server no","中间9个:服务端拒绝应用"
elseif Dialog("App(1.0.1.0)").Dialog("警告").Exist(3) Then
Dialog("App(1.0.1.0)").Dialog("警告").WinButton("客户端不支持该参数-确定").Click
reporter.ReportEvent micDone,"client no","后30个:客户端拒绝应用"
else
reporter.ReportEvent micFail, "fail"," 结果跟预期不一致"
End If
|
现在如果全部测试通过,不会出现fail的情况,但是需要在测试报告中一层层点开,查看对于每个测试数据行的测试结果是不是符合以下描述:
1.前2个:可以应用成功
2.中间9个:服务端拒绝应用
3.后30个:客户端拒绝应用
虽然上面的脚本避免了重复输入41种数据,但是后期的结果查看还是一个艰辛的过程,不知道QTP有没有把测试人员要求的结果描述统一到一个页面来的功能呢,有待挖掘。
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-61079698-8054),我们将立即处理,马上删除。
相关推荐
手工测试与自动化测试的区别如何提升接口自动化测试效率?手动测试和自动化测试的区别自动化测试真实项目工作流程,5个重要阶段自动化测试自行脚本后怎么查看日志?使用AR查看日志方法了解ios自动化测试要知道哪些知识?两种自动化测试工具AutoRunner与Selenium的对比给你一个网站,你如何来做自动化测试的?Web网站测试流程及方法Android自动化测试框架有哪些?有什么用途?什么样的项目适合做自动化?自动化测试人员应具备怎样的能力?为什么要进行自动化测试?自动化测试发展的怎么样了?如何对微信小程序进行自动化测试?自动化测试的行业现状是怎样的?未来的发展方向在哪?自动化测试很难,那么软件测试为什么要坚持自动化呢?关于Selenium自动化测试框架的较佳设计模式关于Selenium自动化测试框架那些你不知道的事
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11热门文章
常见的移动App Bug??崩溃的测试用例设计如何用Jmeter做压力测试QC使用说明APP压力测试入门教程移动app测试中的主要问题jenkins+testng+ant+webdriver持续集成测试使用JMeter进行HTTP负载测试Selenium 2.0 WebDriver 使用指南