使用QTP的automation object model,可以对QTP进行自动化编程,从而自动对QTP进行选项设置、自动运行测试(或组件),而无需使用QTP界面手工进行这些操作。
如果要重复多次的完成同一项工作任务,或重复多次运行同一测试(或组件),或需要快速配置QTP选项,则QTP的自动化编程是非常有用的。
本部分内容包括:
自动化QTP操作
决定什么时候使用QTP自动化编程
选择设计或运行自动化程序的语言与开发环境
了解自动化程序的基本元素
创建自动化程序脚本
1. 自动化QTP操作
使用QTP的Automation Object Model进行自动化编程,实现QTP操作的自动化。QTP的Automation Object Model提供了objects、methods、以及properties,使我们可以在其它的应用程序中控制QTP的操作。
2. 决定什么时候使用QTP自动化编程
就象我们使用QTP设计测试(或组件),创建一个有用的自动化程序也需要一个计划、设计、测试的过程。
下面是几个实用的QTP自动化编程的例子:
● Initializtion programs(初始化编程)-你可以编写一个程序,来自动地启动QTP,配置操作选项及录制设定。
● Maintaining your tests or components(维护测试或组件)-你可以编写一个程序,作用于一系列已有的测试或组件上,以统一达到某一目的。例如:
* Updating values-使用合适的插件环境打开每个测试或组件,并以update的模式运行它(当然必须对应相应的已升级的被测应用程序),然后保存测试或组件以保存更新后的值。
* Applying new options to existing tests of components(对已有的测试或组件应用新的操作选项)-当QTP版本升级以后,你可能发现有某些新的选项设置可应用到当前已有的测试或组件中。你可以编写一个程序,打开每个已有的测试或组件,为它们设置新的选项设置,然后保存并关闭它。
● Calling QuickTest from other application(在其它应用程序中调用QTP)-You can design your own applications with options or controls that run QuickTest automation programs. For example, you could create a Web form or simple Windows interface from which a product manager could schedule QuickTest runs, even if the manager is not familiar with QuickTest.
3. 选择设计或运行自动化程序的语言与开发环境
现有多种面向对象的编程语言,可用于实现QTP的自动化编程。对于每种语言,都有多种开发环境的支持,在该开发环境中,可用以设计或运行自动化程序。
编写自动化程序
你可以在任何一个支持automation的语言与开发环境中编写QTP自动化程序,如VBscrīpt、Javascrīpt、Visual Basic、Visual C++或Visual Studio.NET等等。
有的开发环境support referencing a type library。A type library是一个二进制文件,包括了对象模型的描述、界面、以及其它定义。
如果你选择的环境support referencing a type library,在你编程的过程中,你就可以享受到以下好处,如智能提示的功能、语句自动完成的功能、在状态栏显示帮助提示的功能。QTP的 automation object model提供了一个type library文件,文件名为QTObjectModel.dll,这个文件存储于QTP安装目录的bin目录下。
如果你选择了一个support referencing a type library的开发环境,在编写或运行程序之前,确保装载了QTP的type library。例如:如果你选用了Microsoft Visual Basic,在Microsoft Visual Basic的菜单中选择Project>References,打开References对话框,然后选择QuickTest Professional<版本号>Object Library。
运行自动化程序
很多应用程序都可以运行自动化程序,你甚至可以在命令行使用WSH来运行自动化程序。
例如:Wscrīpt.exe /E:VBscrīpt myscrīpt.vbs。