`

使用QTP对报表中的webtable内容进行正确性验证

J# 
阅读更多

网络转载:http://developer.51cto.com/art/200806/87365.htm

使用QTP对报表中的webtable内容进行正确性验证。

基本思路是:

一:使用getcelldata(i,j)的方法遍历webtable把表格内容存入一个数组中,一般为二维数组

二:使用数据库连接组件ADODB连接后台数据库,使用数据结果集对象保存select查询结果,也是一个二维数组

三:此时区分是否需要验证排列顺序,如果需要,直接对两个二维数组进行一对一遍历比较

四:不需要验证排列顺序,或者顺序无法控制的情况下,我们需要对显示内容和查询预期内容进行比较,这时候牵涉到两个结果集的数据顺序问题,如果采用单对多遍历的情况,效率会十分低。

这时候我们换一种思路考虑,既然是验证内容,那我们就可以把二维数组的验证转换成排序一维数组比较,实现方式是,采用join方法将二维数组的每一行转换成一个字符串(内容没有变化,只加入拼接符),两个二维数组进行相同转换,成为两个一维的字符串数组。

然后使用快速排序法对两个一维数组进行一次排序,同样的机制下,如果原本内容相同,那么排序出的内容也应该相同。然后直接进行一维数组一对一比较。

下面是vbs的快速排序代码,合适数字和字符串数组:

Public Function QSort(ByRef ReArr, ByVal head, ByVal tail)

'ReArr 是待排序数组, head和tail是该数组的最小下标和最大下标
Dim lef, rig
Dim pivot

If head < tail Then
lef=head
rig=tail
pivot=ReArr(lef)
While (lef <> rig)

While (lef < rig and ReArr(rig) >= pivot)
rig = rig-1
Wend
If lef ReArr(lef) = ReArr(rig)
lef = lef+1
End If

While (lef < rig and ReArr(lef) <= pivot)
lef = lef+1
Wend
If lef ReArr(rig) = ReArr(lef)
rig = rig-1
End If

Wend

ReArr(lef) = pivot
call QSort(ReArr, head, lef-1)
call QSort(ReArr, lef+1, tail)

End If
End Function

分享到:
评论

相关推荐

    QTP使用小结

    在案例1中,将BS800操作软件打开到新建项目的界面,并在该界面上使用QTP进行录制。录制完成后,对脚本进行改造,使其能够通过循环语句实现批量新建项目的目的。这不仅大大提高了测试的效率,也保障了测试的一致性和...

    QTP安装和使用教程

    QTP安装和使用教程; QTP自动化测试; QTP安装过程中的注意事项;

    QTP使用手册.rar

    QTP的Error Handling机制允许在脚本中插入错误处理代码,以便在测试过程中遇到问题时能够进行适当的处理。理解并合理使用Try...Catch结构,可以提高测试的稳定性和可靠性。 六、对象智能识别与增强 QTP的Smart ...

    QTP测试计算器的小例子

    在描述中提到的"注意打开后修改源文件里面的路径",这意味着在运行这个QTP测试脚本前,可能需要对配置文件或者引用的资源文件的路径进行调整,确保QTP能够正确找到并使用这些文件。这通常涉及到QTP的环境设置,比如...

    QTP飞机订票测试报告

    5. **事务管理**:QTP可以对一组操作进行事务处理,确保在测试过程中这些操作作为一个整体执行。 6. **错误处理和调试工具**:提供错误捕获和调试功能,帮助找出测试过程中的问题。 【功能测试】 功能测试是验证...

    QTP使用方法总结

    - **录制与回放**:QTP通过录制用户操作来生成测试脚本,然后在后续测试中进行回放,以验证软件功能是否正常。 2. **QTP的工作原理** - **Smart Identification**:QTP的智能识别机制能适应对象属性的变化,即使...

    QTP高级5_QTP中使用正则表达式

    本文将详细介绍如何在QTP/UFT中使用正则表达式进行对象识别及检查点设置,并通过实例加深理解。 #### 二、识别对象时使用正则表达式 在自动化测试过程中,经常遇到对象的关键属性值动态变化的情况。例如,某些元素...

    QTP毕业论文-QTP在软件开发中的应用

    4. **接口测试**:对于后台API接口,QTP也能够进行自动化测试,验证接口返回结果的正确性。 #### 实例分析 假设我们正在开发一款基于Web的应用程序,需要对登录功能进行自动化测试。首先,在QTP中创建一个新的测试...

    QTP中文帮助文件(内容很全)

    学习如何在脚本中添加错误处理代码,以及如何使用QTP的内置调试工具进行问题定位和修复。 八、测试报告与分析: QTP可以生成详细的测试报告,帮助你理解和评估测试结果。这部分将介绍如何解读报告,以及如何定制...

    jisuanqi.rar_qtp_qtp测试计算器

    这样的代码在实际测试脚本中可以被用来验证计算逻辑的正确性。 至于“新建 文本文档 (2).txt”,这可能是一个包含更多代码示例或者使用指南的文本文件。打开这个文件,你可以看到具体的代码实现,学习如何将QTP的...

    QTP 抓取网站价格

    【QTP 抓取网站价格】是自动化测试中的一项重要任务,主要目的是高效地获取网页上的价格信息并进行验证,确保价格数据的准确无误。QuickTest Professional(QTP),现在被称为UFT(Unified Functional Testing),是...

    QTP11使用教程(中文版)

    QTP11 使用教程(中文版) QTP(Quick Test Professional)是 HP 公司花了 45 个亿收购的美科利产品套件之一,是一款用于功能测试的自动化测试工具。它支持功能测试和回归测试自动化,用于每个主要软件应用程序和...

    QTP软件测试工具中文使用说明

    ### QTP软件测试工具中文使用说明 #### QuickTest Professional (QTP) 概览 **QTP**, 即 **QuickTest Professional**,是一款强大的自动化测试工具,主要用于功能性和回归性测试,支持多种环境下的应用程序测试,...

    QTP11中文使用教程(DOC格式)

    学习内容包括QTP的界面介绍、录制和编辑测试脚本、脚本执行与分析、检查点创建、参数化、输出值设置、使用通配符以及脚本模块化等。此外,文档还强调了何时适合使用自动化测试,以及在开始自动化测试前需要考虑的五...

    QTP10 使用指导

    - **回放**: 录制完成后,用户可以对脚本进行编辑,并通过回放来验证应用程序的功能是否正确。此外,QTP还支持参数化和数据驱动测试,使得测试更加灵活。 #### 对象库 - **对象库管理**: QTP10中的对象库是用来...

    QTP中文帮助全集

    5. **检查点与验证点**:使用检查点和验证点确保测试结果的准确性。 6. **参数化**:学习如何使用数据表和外部数据源进行参数化测试。 7. **事务管理**:利用事务来衡量特定操作的性能。 8. **错误处理**:使用On ...

    QTP中文使用指导

    这是我找的QTP中文使用教程,希望能帮助开始着手学习QTP的伙伴。大家一起加油。

    QTP使用教程,详细

    - **对象识别**:QTP通过Object Repository(对象库)来识别应用程序中的对象,如按钮、文本框等,并对其进行操作。 - **录制与回放**:QTP提供录制和回放功能,用户可以通过录制操作来创建测试脚本,然后回放这些...

Global site tag (gtag.js) - Google Analytics