学习《QTP自动化测试进阶》第16章 – QTP的插件技术

 

Adobe为Flex程序的自动化测试提供的QTP插件:

http://labs.adobe.com/wiki/index.php/Flash_Builder_4:Release_Notes#Flex_4_Plug-in_for_HP_QuickTest_Professional

Jamo为手机应用程序自动化测试提供的QTP插件:

http://www.jamosolutions.com/documents/meuxqtp.html

 

启动QTP测试项目,并加载相关插件:

Dim qtApp

Dim blnNeedChangeAddins

Dim arrTestAddins

' 创建QTP应用程序实例对象

Set qtApp = CreateObject("QuickTest.Application")

' 创建一个数组用于存储QTP启动的测试项目所关联的插件

arrTestAddins = qtApp.GetAssociatedAddinsForTest("C:\Tests\AddInTest")

blnNeedChangeAddins = False

' 检查是否所有需要的插件都已经加载

For Each testAddin In arrTestAddins

       ' 如果插件未加载,则需要修改插件关联设置

    If qtApp.Addins(testAddin).Status <> "Active" Then

        blnNeedChangeAddins = True

        Exit For

    End If

Next

' 如果需要修改插件设置,则退出QTP

If qtApp.Launched And blnNeedChangeAddins Then

        qtApp.Quit

End If

'  重新加载插件

If blnNeedChangeAddins Then

    Dim blnActivateOK

       ' 加载相关联的插件并检查是否加载成功

    blnActivateOK = qtApp.SetActiveAddins(arrTestAddins, errorDescription)

       ' 如果加载插件碰到问题,则显示包含问题信息的消息框

    If Not blnActivateOK Then

        MsgBox errorDescription

              ' 退出脚本运行

              WScript.Quit

    End If

End If

' 启动QTP(加载新的插件设置)

If Not qtApp.Launched Then

    qtApp.Launch

End If

' 让QTP可见

qtApp.Visible = True

' 打开测试项目

qtApp.Open "C:\Tests\AddInTest"

' 释放QTP对象

Set qtApp = Nothing

 

对于某些测试环境,例如Web、.NET、Java、Delphi,QTP提供了扩展相关插件的Add-in Extensibility机制,让我们可以通过插件扩展来支持那些不被QTP直接支持的第三方控件、自定义的控件。

 

Extensibility Accelerator 提供给了一个类似Visual Studio的IDE,用于简化和加速Web插件扩展的设计、开发和部署工作。

 

其他参考资料:

1、《QTP测试Flash程序的方法》:

http://blog.csdn.net/Testing_is_believing/archive/2008/06/30/2599728.aspx

2、《QTP与手机测试》:

http://blog.csdn.net/Testing_is_believing/archive/2010/01/03/5125043.aspx

3、Adobe为QTP提供的Flex4插件下载地址:

http://download.macromedia.com/pub/labs/flex/4/flex4_automation_install_100509.zip

4、《Web Extensibility Lesson – Building a toolkit Support》介绍了一个Web 插件扩展开发的例子:

http://www.advancedqtp.com/knowledge-base/articles/code-techniques-id15/web-extensibility-lesson-building-a-toolkit-support-2/

5、QTP Extensibility Accelerator 的demo视频:

http://h30423.www3.hp.com/index.jsp?fr_story=2535f2613537a9e3491ca53047faf913c0666d2e&rf=rss

6、Extensibility Accelerator下载地址:

https://h30406.www3.hp.com/campaigns/2009/wwcampaign/1-7F8KV/index.php?jumpid=ex_r11374_us/en/large/tsg/ext_accelerator_default_sdr_ptr/3-3BYNQ26/20091124

7、W3School的JavaScript教程:

http://www.w3school.com.cn/js/index.asp