自定义QTP保留对象的神话(二)

发表于:2008-11-07 17:45

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:裴明哲    来源:51Testing投稿

#
QTP

  注册自定义QTP保留对象

  将自己的所自定义的保留对象注册到注册表中,这个并不是QTP所包含的保留对象,而是自己设计的保留对象,用VB写的类和函数是可注册的COM对象。操作如下:

  打开注册表,定位注册项:


图3.1

  添加一个名为“MyObject”的注册项;

  添加两个“REG_SZ”类型的注册项,分别为:

  ProgID:准备创建的COM 对象的ID,在这里就是Dictionary 对象所对应的COM 对 象名“PrjName.ClassName”。这个就是前面提到的VB中的工程名、类名。 UIName:QTP指向保留对象的名字,在这里输入“MyObject”

  添加一个类型为“REG_DWORD”的注册项;

  VisibleMode:设置DWORD 值为2,用于控制自动完成(auto-complete)和代码智能感知(intelligence)。

  使用自定义QTP保留对象

  做完以上设置后,重新启动QTP,然后分为两种使用方式

  在关键字视图中调用

  在Insert菜单中选择Step Generator,然后选择Utility Objects,你可以在Object中看到我们定义的保留对象,如下显示:

图4.1

  选中后,你可以在Opertion中看到我们定义的方法,你可以选择某个方法使用。

版权声明:51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像。51Testing软件测试网欢迎与业内同行进行有益的合作和交流,如果有任何有关内容方面的合作事宜,请联系我们

21/212>
《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • dqf
    2012-3-15 16:48:49

    改动函数为:
    Public Function EnterNode(ByRef NodeName, ByRef NodeContent)
       Set dicMetaDescription=CreateObject("Scripting.Dictionary")
    dicMetaDescription("Status")=MicDone
            dicMetaDescription("PlainTextNodeName")=NodeName
            dicMetaDescription("StepHtmlInfo")=NodeContent
            dicMetaDescription("DllIconIndex")=210
            dicMetaDescription("DllIconSelIndex")=210
            dicMetaDescription("DllPATH")="C:\Program Files\HP\QuickTest Professional\bin\ContextManager.dll"
            intContext=Reporter.LogEvent( "User", dicMetaDescription, Reporter.GetContext)
            Reporter.SetContext intContext
    End Function

    Public Function ExitNode
                    Reporter.UnSetContext
    End Function

  • dqf
    2012-3-15 16:46:33

    将函数做了一下改动,运行时报错,提示:需要对象。
    成功注册后在QTP中也能看到,调用的语句为:
    MyObject.EnterNode"父节点","Hello"
    Reporter.ReportEvent micPass,"Step1","Step1 Pass!"
    Reporter.ReportEvent micWarning,"Step2","Step2Pass With Warnning!"
    Reporter.ReportEvent micFail,"Step3","Step3Fail!"
    MyObject.ExitNode
    MyObject.EnterNode"另一个节点","Hi"
    Reporter.ReportEvent micPass,"Step4","Step4 Pass!"
    Reporter.ReportEvent micPass,"Step5","Step5 Pass!"
    MyObject.ExitNode
    Reporter.ReportEvent micPass,"Case3","Case3 Pass!"

  • dqf
    2012-3-15 16:41:08

    刚发表的成功了没呀?

  • lantianwei
    2008-11-07 21:52:25

    不错!

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号