vikesgao 发表于 2011-6-9 15:44:41

QTP-倚天剑的收获

写下自己学习QTP的技巧心得,希望能帮到大家学习QTP!:)

1.自定义函数,并调用此函数
定义:Function Definition Generator
路径:Insert->Function Definition Generator
调用:直接输入函数名称,便可使用

2.手工插入操作步骤
定义:Dtep Generator
路径:Insert->Step Generator

3.语法检查-编辑脚本语法存在错误
路径:Tools->Check Syntax

4.Run Current Action-单独运行Action
定义:有利于节约时间,单独编辑脚本
路径:Automation->Run Current Action

5.Test Batch Runner-批量运行测试脚本
定义:需要在QTP,Tools-options勾选Allow other Mercury products to run test and components
路径:开始->程序->QTP->Test Batch Runner

6.QTP与LR的整合
定义:更加完善地操作业务编辑LR的脚本
路径:Insert Step->Start Transaction

7.QTP-Silent Test Runner与模拟LR的调用
定义:模拟LR调用脚本是否成功,可以看出总事务时间
路径:开始->程序->QTP->Tool->Silent Test Runner

8.LR运行QTP脚本进行性能测试
定义:更加完善业务,完整的设计脚本
路径:打开LR文件时,文件类型选择:All files,选择QTP.USR的文件就OK了注意:LR一定需要WEB & global license才不会出现报错

9.output Value-输出对象属性值
定义:测试步骤前,查看对像属性的值;相当于对检查点填写值之前的检查
路径:Insert->Output Value

10.网页检查点
定义:网页检查点可以测出所有链接的有效性
路径:插入检查点,弹出Object Selection窗体时,选择page:XX->点击OK就可以添加网页检查点

11.Action输入参数
定义:为参数定义一个默认值;进行参数化时,直接在parameter types 选择Test/action parameter会出现刚才设置的默认值
路径:Edit->Action->Action Properties

12.调用Action
定义:在new action中往往都需要另外一个Action外做为引导,这时我们就可以使用调用Action方式来处下
路径:Insert->Call to Existing Action
定义:设置调用Action的参数化
路径2:Edit->Action->Action Properties

13.Environment环境变量参数化,及设置变量
定义:可以使用本机器的一些变量名称,进行设置Action的变量;进行参数化时,直接在parameter types 选择Environment设置的默认值
设置变量路径:File->Setting->Environment->Variable type->User-defined

14.Data Driver
定义:查找录制时,没有被参数化的对象;并可以对全部没有被参数化的对象进行参数化
路径:Tools->Data Driver

15.VBS自动识别和完成
路径:Tool->View Options:Auto-expand VBScript syntax

16.使用PathFinder对象查找文件
定义:查找系统文件;Folders添加搜索目录,可以查询添加目录的文件
路径:Tool->Options:Folders
使用方法:x=PathFinder.Locate("查询文件:Parameters.mtr")

17.systemutil.Run对象应用
定义:运行某程序
使用方法:systemutil.Run "程序路径+名称","运行Link地址"
例:systemutil.Run "C:\Program Files\Internet Explorer\IEXPLORE.EXE","http://www.baidu.com/"

18.Report对象应用
定义:可设置单独操作步骤生成一个报告
路径:Insert->Reprot
使用方法:Reporter.ReportEvent Status, "Name","Details"
例:Reporter.ReportEvent micPass , "123", "123"

19.Environment对象应用
定义:读取和设置环境变量(Built-In\User-defined上面有讲述Environment应用)
脚本:
OS=Environment.Value("OS")
OSVersion=Environment.Value("OSVersion")
TestName=Environment.Value("TestName")
Reporter.ReportEvent micDone , "Environment" ,"运行测试脚本:" &TestName & "的操作系统为:" & OS & "版本为:" & OSVersion

20.wait\print\msgbox函数应用
定义:wait暂停测试脚本;print非模式显示测试过程信息;msgbox窗体模式显示测试过程信息
脚本:
wait(10);
msgbox ("ABC");
print:
set a=browser...
print a

21.虚拟对象
定义:虚拟对象可以把图片或其他元素转化为按钮形式出进录制;虚拟对象只可以在录制时被使用
路径:Tools->Virtual Objects->New Virtual Objects

22.Recovery Scenarios-错误恢复场景
定义:处理不可遇知的错误场景;由于步骤太多不详细讲述使用
路径:
创建场景:Resources->Recovery Scenario Manager
添加场景:File->setting->Recovery:添加创建场景OK

23.使用set & with
定义:多使用set或with把代码简化,便于减少代码的出错率
脚本:
set a = browser...
a.link("").click

with browser...
        .click
        .click
end with

24.Exist
定义:判断控件是否存在
脚本:if a("").Exist(2) then
msgbox()...

25.猴子测试-随机数 Randomize&RandomNumber
定义:Randomize初始化随机数,RandomNumber随机产生字符
脚本:
Randomize '初始化 For
For Iterator = 1 To 10 Step 1
key=array("123456","%^&*(","是砂")
n=randomnumber(0,2)
send=key(n)
'msgbox send

key=array("123456","%^&*(","是砂") :创建数组
n=randomnumber(0,2) :2为总的数组量,如果输入总数组不等于组建的数组,会出现问题


26.通过WMI获取屏幕高度与宽度
定义:让猴子任意点击界面的测试,先获取屏幕的高度与宽度
脚本:
Computer="."
Set objWMIService=GetObject("winmgmts:\\"& Computer &"\root\CIMV2")
Set colItems=objWMIService.execquery("select * from win32_desktopMonitor",,48)
For Each objitem In colitems
height=objitem.screenheight
width=objitem.screenwidth
Next
MsgBox width & "," & height


27.通过.Net获取屏幕高度与宽度
定义:让猴子任意点击界面的测试,先获取屏幕的高度与宽度
脚本:
Set CreateInstance=DotNetFactory.CreateInstance("System.Windows.Forms.Screen","System.Windows.Forms")
width=CreateInstance.primaryscreen.workingarea.width
height=CreateInstance.primaryscreen.workingarea.height
msgbox width & "," & height

zzxxbb112 发表于 2011-6-9 16:41:12

感谢你的分享,心得不错~~:loveliness:

vikesgao 发表于 2011-6-9 17:06:12

呵呵,多谢~

17800455 发表于 2011-6-10 11:00:24

不错.......................
页: [1]
查看完整版本: QTP-倚天剑的收获