51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 22677|回复: 50
打印 上一主题 下一主题

[原创] QuickTest Plus小工具,大作用

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-8-22 12:10:01 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
象我这样初学QTP的朋友刚开始时很可能没有注意到QuickTest Plus,因为QTP安装后默认是
没有安装plus的,千回百转知道了plus,大概看了看,发现plus虽然都是些辅助性的小工具,但
往往会给你的工作带来事半功倍的效果。

一、安装QuickTest plus

  QTP安装后,在 程序 > QuickTest Professional下点击QuickTest Plus,然后按照提示一步步往下安装即可,
  其中要求输入序列号,输入和QTP安装时相同的序列号就可以了(8888-8888888888)。

二、提示和技巧

  plus不仅提供了一些工具,还在它的帮助手册里给出了一些提示和技巧,以及一些实用的Function。
  在这里我把一些比较常用的好东东贴出来,其他的就看plus的帮助吧。

1、创建action template.
    当希望在每一个新建action时都增加一些头部说明,比如作者、创建日期、说明等,用action template
    来实现最简单快捷。
    方法:用记事本等文本编辑器,输入如下类似的内容:
          'Company: xxxx
          'Author: xxx
          'Product: xxx
          'Date: xx
         然后将文件保存为ActionTemplate.mst,并存放到QTP安装目录下的dat目录,重启QTP,新建一个action试试,新建的action会包含以上信息。

2、关于设置测试报告里只显示error的信息。
    帮助中说:修改安装目录下bin\QTReport.ini文件,增加以下内容:
         [FilterDialog]
         ReportAppDefaultFilter=1 # for error only
         ReportAppDefaultFilter=3 # shows all messages (default)
    但根据我的测试结果,不尽其然:
     1)当ReportAppDefaultFilter=1时,如果Object Repository中缺少对象,在报告中会在相应的
       action前打叉,但不会提示具体错误,而成功的步骤都有具体信息显示。
     2)用Reporter.ReportEvent测试的结果是:
        ReportAppDefaultFilter=1时,只显示micDone的具体信息;
        ReportAppDefaultFilter=2时,只显示micFail的具体信息;
        ReportAppDefaultFilter=3时,只显示micDone和micFail的具体信息;
        ReportAppDefaultFilter=4时,只显示micPass的具体信息;

    似乎无规律可寻,所以我的结论暂时是:不要设置这个参数,用默认的,显示所有信息,更多的信息有利于分析结果。

3. 启动IE的语句:SystemUtil.Run "iexplore.exe", "http://www.mercuryinteractive.com"
4. 关闭IE或其他程序的语句:SystemUtil.CloseProcessByName "app.exe"
     or  SystemUtil.CloseProcessByWndTitle "Some Title"

三、Function Libraries

    plus的帮助中提供了一些常用的Function,把这些function copy到文本编辑器中保存为.vbs文件,并添加到Resources中就可以直接调用了,
  或直接copy到你的action中,就可以在当前的action中调用。更推荐第一种方法,所有的action都可以调用。

1、文件操作相关的function,如下,望名则可生意:
    Function CreateFile(sFilename, bOverwrite);
    Function OpenFile(sFilename, iomode, create);
    Function AppendToFile(sFilename, sLine);
    Function WriteToFile(sFilename, sLine);
   
2、Function NormalizeString(OrgStr); (将字符串变成regular express)

3、GlobalDictionary的使用,这是另外一种可以共享全局变量的方法,在所有的action中,包括local和external action中都可以访问。

4、使用文件系统相关的function:
    Function ReadLineFromFile (byref FileRef);
    Sub FileDelete ( FilePath);
    Function FileCompare (byref FilePath1, byref FilePath2, byref FilePathDiff, ignoreWhiteSpace);
    Function CheckFileExists (FilePath)

5. web table相关的function:
    Function ItemByKeyColumn(): 根据table中某列的值,得到同一行中另一列的对象。(这个功能非常有用。)
    Function ObjectsByMicClass(Obj, micClass): 得到table中所有的micClass类型的对象集合。


四、工具
  
  1、Automation Generator Utility
     添加一系列动作,然后自动完成。如:启动QTP,然后执行test1, test2, test3...,最后关闭QTP,还可以连接或断开Quality center.
     值得注意的是,每个test都可以分别指定test result文件,这样可以把所有test result指定到同一个目录下,所有test执行完成后,
     用Test Result Viewer就可以快速的查看测试报告。

  2、External Action Call Modifier Utility
     外部Action调用修改工具。当删除一个Reusable action前,如果没有先删除其他test中对它的调用,则打开其他test时,会提示找不到某某
     action,这种情况下启用该工具,工具会列出test下所有调用的外部action(如果调用的action是使用相对路径,则不会列出来),如果外部
     action找不到,会用红色的问号表示,删除它并保存后就OK了。
     也可以在此处修改外部action的来源,修改后原来的action parameter仍会保留。
  
  3、Repository Merge Utility
     合并多个对象库文件中的对象,如果出现冲突,可以选择忽略,或手工合并,或自动合并。
     对象库文件是Action目录下的Resource.mtr文件。

  4. Report Analyzer
     Test Result的另一个查看工具,提供了一些过滤条件,比如只查看failed step, 或只查看checkpoints,或只查看某个action。

先就写这么多了,抛砖引玉,希望你能发现你想要的东西。写得不对的,不要客气,请指出来,不胜感激。

[ 本帖最后由 麦子华华 于 2006-8-22 12:13 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    开心
    2017-1-14 07:47
  • 签到天数: 5 天

    连续签到: 2 天

    [LV.2]测试排长

    51#
    发表于 2012-11-15 10:05:09 | 只看该作者
    11有么?还没装上11,等看看
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    50#
    发表于 2010-3-29 15:29:48 | 只看该作者
    可惜我用的是9.2的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    49#
    发表于 2009-3-5 16:26:07 | 只看该作者

    我还是不懂

    我删除了一个call的action,可在external action中还有原来的脚本。
    我是qtp9.5,也找不到那个plus。请帮忙指导一下,急
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    48#
    发表于 2008-4-24 16:47:25 | 只看该作者
    试试看
    楼主辛苦咯
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    47#
    发表于 2007-12-10 16:50:50 | 只看该作者
    QTP9.2的路径:
    Mercury Interactive\QuickTest Professional\CodeSamplesPlus
    形成了一个专门的help文件了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    46#
    发表于 2007-9-25 15:39:58 | 只看该作者
    谢谢好东西
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    45#
    发表于 2007-9-24 09:27:38 | 只看该作者
    被15#给“骗”了!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    44#
    发表于 2007-9-21 17:59:23 | 只看该作者
    我怎么找不到这个东西?QTP9.2
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    43#
    发表于 2007-7-26 21:50:42 | 只看该作者
    wonderful article, support you
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    42#
    发表于 2007-7-24 20:54:01 | 只看该作者
    支持一下,谢谢分享
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    41#
    发表于 2007-7-18 11:14:55 | 只看该作者
    呵呵,找到了。Thanks
    试用一下。sdlkfj5
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    40#
    发表于 2007-7-18 11:11:18 | 只看该作者
    请教楼上的,9.0的在哪找呢?

    5. web table相关的function:
        Function ItemByKeyColumn(): 根据table中某列的值,得到同一行中另一列的对象。(这个功能非常有用。)
        Function ObjectsByMicClass(Obj, micClass): 得到table中所有的micClass类型的对象集合。


    这两个函数,楼主可不可以帮我找找啊
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    39#
    发表于 2007-7-12 22:40:47 | 只看该作者
    原帖由 SueR 于 2007-2-16 04:31 发表
    哎呀!早知道当初不用9.0了...
    555,research没做好....


    9.0以上版本的plus已经不用安装了,默认都已经有了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    38#
    发表于 2007-7-12 09:55:48 | 只看该作者
    原来还有这么一个东东?!真是发现新大陆啊  嘻嘻
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    37#
    发表于 2007-7-11 21:27:46 | 只看该作者
    sdlkfj2
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    36#
    发表于 2007-7-11 21:16:22 | 只看该作者
    sdlkfj2
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    35#
    发表于 2007-7-11 16:03:00 | 只看该作者
    向楼主致敬
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    34#
    发表于 2007-7-11 15:43:58 | 只看该作者
    太棒了  楼主
    佩服
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    33#
    发表于 2007-7-10 14:53:03 | 只看该作者
    受教,多谢~~~
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-9-24 17:13 , Processed in 0.083915 second(s), 30 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表