"QTP(QuickTest Professional,现在被称为UFT - Unified Functional Testing)是一种功能自动化测试工具,常用于软件的回归测试和性能测试。它支持多种应用类型,包括Web、桌面、移动应用等。本资源主要介绍了在QTP中如何使用VBA(Visual Basic for Applications)来操作Excel进行数据的读取和写入。"
在自动化测试中,QTP允许用户自定义函数以扩展其功能。在本示例中,我们看到了两个自定义的VBA函数,一个是`getOneValue`用于从Excel文件中读取特定单元格的值,另一个是`setOneValue`用于向Excel文件的指定单元格写入数据。这两个函数在自动化测试中特别有用,因为它们允许从外部数据源(如Excel)动态地获取和设置测试数据。
首先,`getOneValue`函数的工作流程如下:
1. 创建一个Excel应用程序对象`ExcelApp`,通过`CreateObject("Excel.Application")`实现。
2. 使用`ExcelApp.WorkBooks.Open(strFilePath)`打开指定路径的Excel文件,并将其赋值给`ExcelBook`。
3. 获取工作簿中的指定工作表`ExcelSheet`,通过`ExcelBook.WorkSheets(strSheetName)`完成。
4. 调用`ExcelSheet.Cells(intRow, intCol)`来读取指定行和列的值,并将结果返回给调用者。
5. 最后,通过`closeExcelSheet ExcelBook, ExcelApp, ExcelSheet`关闭Excel工作簿和应用程序,释放资源。
接着,`setOneValue`函数用于向Excel写入数据,步骤如下:
1. 同样,创建Excel应用程序对象和打开工作簿。
2. 选择工作表后,使用`ExcelSheet.Cells(intRow, intCol)`设置指定位置的单元格值为`strValue`。
3. 在写入完成后,关闭Excel资源。
这两个函数在QTP测试脚本中可以被调用来处理测试数据,例如,可以从Excel读取测试输入数据,执行测试步骤,然后将结果写回Excel进行结果验证或报告。这种方法对于管理大量测试数据非常有效,特别是在进行数据驱动测试时。
通过这种方式,QTP用户能够利用Excel的灵活性和强大的数据管理功能,结合QTP的自动化能力,构建出高效且易于维护的测试解决方案。同时,VBA的使用也使得这些操作可以更加自定义化和适应各种复杂的需求。