天天看点

QuickTest plus

一、安装QuickTest plus (9.0以后不需要再安装)

  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

继续阅读