QTP脚本教程:VBS连接Oracle数据库与对象识别原理

需积分: 18 3 下载量 188 浏览量 更新于2024-08-23 收藏 378KB PPT 举报
"这篇教程介绍了如何使用VBScript (Visual Basic Script) 在QTP (QuickTest Professional) 中不依赖本地数据源连接Oracle数据库进行脚本编程。教程中的代码示例展示了如何创建ADODB对象来建立数据库连接,执行SQL查询并显示结果,以及如何正确关闭数据库连接。同时,该资源还探讨了QTP中的对象识别机制和操作对象的原理,包括TestObject(TO)和RuntimeObject(RO)的概念,以及与之相关的函数,如GetTOProperty、GetROProperty等。此外,还提到了QTP中对象的封装接口和自身接口的区别,并给出了操作对象属性和方法的实例。" 在QTP中,当需要连接Oracle数据库而不使用本地数据源时,可以利用VBScript创建ADODB对象。首先,创建`ADODB.Recordset`和`ADODB.Command`对象,然后设置连接字符串(StrCon),指定驱动、服务器、用户名和密码。接着,激活Command对象的连接,并设置其CommandType为1(adCmdText),表示将执行文本类型的SQL命令。在本例中,SQL命令是查询spaces表中的记录数量。执行查询后,通过循环遍历Recordset对象并显示结果。最后,释放并关闭所有使用的对象以释放系统资源。 QTP的对象模型对于自动化测试至关重要。TestObject代表的是仓库中定义的对象模板,而RuntimeObject则是运行时实际应用中的对象。QTP通过比较TO和RO的属性来识别和操作实际对象。录制脚本时,TO会被自动添加到仓库,而在运行时,QTP根据TO的属性寻找并操作匹配的RO。可以通过GetTOProperty和SetTOProperty等函数动态调整TO属性以适应可能变化的RO。 QTP提供了两种操作对象的方式:对象的封装接口和自身接口。封装接口是QTP提供的友好接口,而自身接口直接对应于对象的原生方法和属性。例如,对于一个文本框,可以使用封装接口的`.Text`属性来获取或设置文本,或者使用自身接口的`.object.Text`。两者的主要区别在于是否需要在对象名后添加`object`关键字。 此外,教程中还提到了获取文本框值的两种方法,一种是利用QTP的内置功能,如`Window("WindowsInternetExplorer").WinObject("Internet Explorer").WebEdit("name:=txtSearch").Text`,另一种可能是直接调用对象的`.Text`属性。这些方法展示了QTP如何与应用程序中的控件进行交互,从而实现自动化测试。