QTP指导
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
批评测试工具产品参考报价
1、QTP8.2:18万
2、loadrunner8.0:$5.5w-7.5w
(1)支持的虚拟用户:100个的12.3w,250个的16.5w,500个的20.6w,1000个的30.9w
QTP安装与破解
1、安装脚本调试工具
(1)使用“QTP脚本调试器.iso”
2、安装QTP10.0
(1)使用“QTO10.0.iso”
(2)到输入序列号时,取消退出
3、破解
(1)在C:\Program Files\Common Files\Mercury Interactive下创建文件夹:License Manager
(2)将“QTP补丁.iso”中的破解程序mgn-mqt82.exe复制到E:\HP\QuickTest Professional\bin下
(3)运行mgn-mqt82.exe
(4)打开C:\Program Files\Common Files\Mercury Interactive\License Manager\lservrc文件,Copy第一行#前的代码(5)将上一步复制的内容粘贴到QTP安装界面的license文本框中,点击完成
QTP界面
1、file菜单——settings
(1)properties
<1>Associated add-ins(插件)
○1若录windows程序,常把web项勾掉
○2若录网页,常把visual basic勾掉,练习无所谓,可以全选
(2)run:执行参数化时常用
○1iteration:重复、迭代、循环
○2Object synchronization timeout:界面报错时等待最长时间
○3Disable Smart Identification during the run session:禁止智能识别用户操作
○4Save image of desktop when errors occurs:出错时保存图片
○5一单击Run后,弹出的窗口会询问结果存入硬盘和是临时存储
(3)Web:网站的用户名和密码,一般不用
(4)Recovery:如测试计算器时,QQ闪了一下,QTP会将焦点移至QQ,挡住了QTP,找不到计算器了,此时可设置去执行其他事情或步骤
2、Resources菜单——Object Repository(对象库)
(1)必须打开程序
(2)可以高亮显示控件:Highlight工具
(3)可以添加控件:单击某个控件即可,可以直接把控件拖到代码中,这会自动生成新代码
3、tools——options
(1)General
○1Display Add-in:在启动QTP时显示插件,选上会使QTP启动变慢
○2Display Start Page:启动QTP时显示开始页,选上也会使QTP启动变慢
<1>在开始页中,简单介绍一下Welcome下的一些图标
<2>Test选项卡:Test Flow为测试流,在这里可以建很多Action
○1单击下方的"Expert View(专家视图)",可以在此输入代码,如msgbox("hello!",64+1,"caption"),提示需要安装好调试插件(脚本调试器debuggersetup.exe:可以断点执行)
○3Automatically generate "with":自动生成with语句,with语句(调用函数)如
xxx.chi() xxx.he() xxx.shui() xxx.chang
可以改写为:
with xxx
begin
chi()
he()
shui()
chang()
end
○4Restore Layout:回到刚安装完QTP的面板状态
(2)Run
○1Normal:可以设置回放速度,可设置为1000或2000,表示1s、2s,一般QTP回放会较快
○2Allow…:允许QC等访问QTP
(3)Windows Applications
<1>Search radius:查找半径,以鼠标单击处为圆心,此值为半径查找控件
4、工具栏
(1)Record
<1>录制其实是截图,在保存的测试文件夹中Action1(场景)——snapshots——看以看到压缩的图片,需要解压软件才能查看,回放时以此图对比
(2)Run
<1>回放时,以单击鼠标的位置为圆心,常以35px为半径进行查找控件(通过控件的名字识别控件),从左向右,从上向下查找,根据超时来决定何时结束查找
QTP初步使用
1、QTP使用流程
(1)录制Windows程序
<1>QTP自动打开程序
○1脱机版小飞机
1)Automation——Record and Run Settings——Windows Application
A)选中“Record and run only on”——选中“Applications specified below”——点击窗口中右部的“+”——看一下application的内容:…\QuickTest Professional\samples\flight\app\flight4a.exe Launch Application选项指录制脚本时自动启动程序
Include descendant processes:包括子进程
B)录制:点击工具栏Record,按软件提示输入即可
C)回放:即允许,单击工具栏Run或按F5,可以保存测试结果
2)Applications opend via the desktop(by the windows shell)可以录制从桌面操作的软件
○2记事本:C:\WINDOWS\notepad.exe
○3计算器:C:\WINDOWS\system32\calc.exe
<2>手动打开程序
○1脱机版小飞机:开始——QTP——samples——Flight
○2记事本
○3计算器
(2)录制Web程序
<1>Web版小飞机
○1安装网页版小飞机:Mtours.iso\MTours
○2关闭再启动Tomcat服务(在开始菜单的Mercury Tours下,类似于IIS),不要关闭Tomcat服务窗口
○3打开开始菜单下的Mercury tours网页,在localhost后面加8080
○4注册新账号(在注册时应该会崩溃,因为java安装程序有些问题,找到Mtours.iso\1.2,停止Tomcat,把其中内容拷至C:\Program Files\Mercury Interactive\MercuryTours\Javasoft\jre\12.\,全部替换<注:jre是运行java程序,是客户端;jdk是用于开发java程序的>)
○5登录(若有提示安装Activex插件,最好不要动,或在录之前处理好,最好录制前什么都不弹出,可把自动完成全部勾除,否则在录制时,若没有弹出,回放就会不成功,因为不能重现了)
○6录制:输入网址:http://IP地址:8080/mtours(注意不要遗漏8080)——登录(不能注册,否则注册又会重复)——选2张票——log out——停止录制——关闭网页——Run(回放,因没有设置检查点,所以不知
道测试是否成功)
<2>自动打开Web小飞机程序
<3>手动打开Web小飞机程序
2、测试步骤的编辑或补录
(1)代码形式(Expert View)
<1>写入代码即可,如加上update order,转到关键字模式后,可见不可识别其项目——转到Keyword View,单击项目列表——Object from repository——点击手状按钮(最好事先打开flight程序)——找到要添加的对象控件(可以按住ctrl是鼠标脱离手状)——点击如Expert View即可刷新
(2)关键字模式
<1>先在工具栏对象库(Object repository)中添加控件——在打开的窗口中,单击工具栏的添加(Add objects to local)按钮——定位控件,单击一下即可——在Keyword View中,单击项目列表——加一个步骤:在item最后一行(空白行)处单击——找到新添加的空间名字——转到Expert View,可见自动写入了代码(或在某一步骤后右击添加新步骤)
(3)补录
<1>在Active Screen视图中右击要添加的控件——Step Generator
模拟录制
1、区别
(1)Analog Record,会把鼠标的操作录入;一般用于对所有的操作比较严格时,特适用于签名时
(2)Normal Record为一般录制只会录制与程序有关的控件操作
(3)低级录制:根据鼠标相对位置录制,一般可以开始时单击某个对象,确定参考点
2、小飞机单机版签名演示
(1)在插入订单的界面,单击工具栏“打开”——输入日期
(2)文件——传真订单——输入传真号码如010*******——选中订单中签名——手工写入签名,不过不用这种方式录制
(3)模拟录制
<1>录制
<2>打开画图板,选中画刷,单击QTP工具栏“模拟录制”,选择第二项,单击手状按钮,点击“启动模拟录制”
按钮,写完一些文字,关闭画图板,不保存,停止录制
<3>回放
<4>说明:签名不以代码方式保存,而是类似于录屏
低级录制
1、低级录制只录制鼠标的相对位置,只关注鼠标的起始点和结束点,或者说鼠标点击和放开的位置;适合于控件识别不了时,控件能单击,使用此方式进行相对坐标录制即可
2、录制
3、打开画图板,点低级录制工具,在画图板中写东西
4、回放
检查点
1、有8种检查点(预期结果):标准、图片、图像、表格、网页、文本、数据库、XML(加红色的为需重点讲解的)
2、录制“小飞机”单机版
(1)新建一个测试Test
(2)自动化——录制和运行设置——windows应用程序(注意同时Web项选第一个)——选择第一项
(3)Record录制
(4)手动:开始——程序——QTP——Sample Applications——Flight——输入用户名如wwww,点击“help”——点击“确定”——输入密码mercury——关闭窗口
(5)停止录制
(6)Run回放:设置回放速度如1s,工具——选项——Run——Run Mod:normal设置为1500ms
(7)可以直接查看结果,菜单View——Expand All,可以全部展开
3、添加检查点:如检查“帮助”中的mercury对不对
(1)在关键字视图中,找到帮助的弹出窗口
(2)精确定位到弹出窗口中的mercury等文字,右击“插入文本检查点”或“插入标准检查点”
<1>文本检查点的选项解释
○1match case:区分大小写;exact match:精确匹配;ignore space:忽略空格
○2checkpoint timeout:找不到控件或文字等对象时的超时设置
<2>标准检查点的选项解释
○1enabled:对象可用性,如置灰否
○2x、y:为对象的坐标
○3text:文本值
○4insert statement:表示此检查点语句防止的位置在当前步骤的前或后
(3)取消enabled,点击text,超时设置为5s,ok
(4)回放Run
(5)在结果中查看检查点已经通过
4、修改检查点:添加一个不能通过的检查点
(1)在关键字视图,找到检查点(第二列Operation为check),单击第三列Value中的勾,可以修改检查点
(2)把mercury改为mercury1
(3)Run,查看结果
5、图像检查点(多用于回归测试)
(1)小飞机
<1>找到登录界面,让飞机图片完全显示,不要有任何遮挡,右击飞机图片——插入bitmap检查点
<2>tolerance:公差,容忍度,可以设置颜色的符合标准或质地,可以不设置,会很苛刻
<3>超时设置为5s
<4>Run回放,看结果
(2)三角形回归测试
<1>搭建三角形网站
<2>录制新三角形
<3>修改代码,把打开的网页网址修改为旧三角形的网址,右击三角形图形,插入图像检查点,设置超时3s
<4>Run回放
<5>切换到专家试图,把代码中网址中的newsjx改成sjx,重新回放,看结果
6、录制过程中插入检查点
(1)录制小飞机
<1>打开小飞机脱机版
<2>弹出help密码时,菜单插入检查点——文本检查点
<3>点击一下The password…——检查点为常数——超时3s——…
<4>常在录制好以后添加检查点
<5>运行
7、同步检查点
(1)主要用在动态的控件中,比如进度条等
(2)在录制过程中插入才可以插入
(3)property name选择text,value填入"insert done",此时结果会有警告,value中加上…就可以了,大小写也得一致)
(4)注意超时时间不要太小,否则插入数据完不成
参数化、输出值检查点
1、即设置用例中的很多具体数据、对应的很多具体的预期结果、实际结果
2、Web程序的例子(参数化之前)
(1)发布两个网站sjx(1.0版)和newsjx(2.0版)(可重新搭建)
(2)先试验能够打开两个网站
(3)新建测试——录制与运行设置——Web——选择第一项——录制——打开IE——手动输入网址(不要复制粘贴,否则无法录制)http://192.168.5.211/sjx——输入三边3,3,3——提交——确定——关闭窗口——停止录制
(4)添加检查点与上边完全相同
(5)Run回放
3、简单的参数化
(1)在上一步的基础上,找到输入第一条边3的行,单击Value列,设置其值
(2)选择parameter,Name起名为p1,ok
(3)选择Data Table视图,可以看到下面的Excel表中已经有数据
(4)类似的把另外两条边的数据接入,分别起名为p2、p3
4、参数化、检查点
(1)对提交后弹出框中的“等边三角形”添加检查点,对检查点进行参数化,起名为checkpoint1,超时3s(Text not displayed表示不显示预期结果,此项不能选)
(2)Run回放,看结果
(3)利用原来数据的参数化并无实际意义
5、实际的参数化
(1)清除原有的检查点和参数化
(2)在Data Table视图中,加入
<1>3,3,4:等腰三角形
<2>3,6,9,不能构成三角形
<3>吃、喝、玩,输入错误
(3)Run回放(跑3遍),看结果
6、输出值检查点(实际的输出结果)
(1)找到最终的弹出界面
(2)右击输出的文字——插入输出值——选中text——点击modify进行参数化,编辑parameter最右方的图标(3)Run回放,看结果
(4)在QTP结果界面中,点击Test Summary下的Run-time Data Table可以看到临时结果
(5)查看Data Table中的输出列,实际值没有显示在QTP没有关系,可在存储结果的报告文件中保存
7、Excel编程处理测试结果及统计分析
(1)事先保存测试结果
(2)在测试结果文件夹中找到Default.xls
(3)在最后一列加列名Results,编辑公式写入Passed或Failed
(4)有多少用例通过等体积数据也可以自行设计
8、执行部分测试用例
(1)菜单:文件——设置——运行——可以设置执行用例的条数
9、Data Table中的复制粘贴(数据批量处理)
(1)使用小飞机网站版
(2)手动录制
<1>注意启动Tomcat
<2>注意事先注册一个用户
<3>注意网址中的8080
<4>回放
(3)参数化
<1>对出发地、目的地参数化
(4)Data Table中的数据批量处理
<1>从Excel导入测试数据
<2>从软件中导入(只适用于Web程序)
○1找到出发地的控件,右击Copy Content,转到Data Table,然后粘贴,类似的在目的地列也粘贴
○2调整Data Table的两列数据,使同一行不同
○3回放
DB检查点
1、数据库检查点用于检查数据是否正确插入、修改或删除
2、使用小飞机单机版,需要Office数据库Access的支持
(1)小飞机:开始\程序\QTP\sample\flight
(2)找一下数据库存放位置:右击程序中的小飞机——属性
(3)查看数据库,主要使用orders表
3、录制小飞机单机版
(1)录制,用户名输入what,客户名输入where
(2)查看数据库中的orders表,可见多了1记录,是录制时加入的
(3)回放
(4)查看数据库中的orders表,可见又多了1记录,是回放时加入的
4、插入DB检查点(检查已有数据)
(1)删除数据库中的第10条后面的记录
(2)找到Insert Order按钮,插入DB检查点(注意检查点应该在Insert之后)
○1只能使用主菜单:Insert——Checkpoint——DB Checkpoint
○2选择使用SQL语句
○3create:选择机器数据源,选择QT_Flight32,输入SQL语句:select * from orders
<1>数据列带勾:表示输入数据时检查数据是否存在,点击右上方#号,可把勾去掉,此处全打勾,表中的数据是预期结果
<2>打勾,表示预期结果
<3>选择After current step
<4>Cell Identification:设置数据项的识别方式,by row number表示只检查DbTable中的行
(3)回放,查看结果,通过,运行时检查了DbTable中的所有数据
(4)随便修改DB中的前10行中的一个数据,再回放,看结果,失败
(5)以上操作说明,对新插入的数据是不做检查的
(6)修改表数据,确定数据库中只有11条,若没有11条,可回放加入
5、检查新插入的数据
(1)删除原来的DB检查点,重新创建DB检查点,选中最后一行此处为第11行,表示只检查第11行,回放,结果通过,但这并不表明刚刚插入的数据是正确的,因为刚刚插入的并没有检查
(2)随便修改DB中第11行的一个数据,再回放,看结果,失败
(3)随便修改DB中第11行以后的一个数据,回放,看结果,通过,因为直接检查第11行
(4)把DB中的第10条以后的数据全部删除,看一下DB检查点中的检查项,回放
○1结果没通过,单击没通过处,在右方打开的出口最右侧栏,单击“天平”图标,可见有预期结果,没有实际结果,因为DB中还没有11条记录,这说明数据没有被成功写入数据库,当一点击Insert时,就开始检查了,但数据还没有被写完
○2增加等待检查时间:在专家视图,找到Insert对应的代码,在后边加上wait 8等待8s使数据库写完○3删除第10行以后的数据,重新回放,看结果,通过
6、检查点参数化
(1)只保留数据库中的第10条及其之前的记录
(2)将DB检查点参数化(此处仅选中11)
(3)查看Data Table,再添加一个12
(4)回放,查看结果,11成功,12失败,因为检查的还是第11行,by row number只检查DbTable中的行(5)修改参数化,使检查随着参数值向下走
○1只保留数据库中的第10条及其之前的记录
○2选择“Cell definition”——选择“By selected key column”(只要列中有待检查值即通过)——(一定要)单击右边的1(列号)
○3回放,看结果,通过
○4再加一行测试数据如13,试试,通过
7、客户名检查点(DB检查点另一个例子)
(1)删除DB中第11条记录(保留)以后的数据
(2)删除原有的DB检查点,注意同时删除Data Table中的数据
(3)参数化客户名,加入测试数据zuzhang、banzhang
(4)Insert order后插入DB检查点(即检查DB中是否存在此数据),写入SQL语句:select customer_name from orders
(5)选择只检测第11条(where),参数化,在Cell Identification中选择By selected key column,选中1为关键列,选择After current step
(6)代码中在DB检查代码之前加入wait 8
(7)在Data Table中添加DB检查点值zuzhang、banzhang,回放,看结果全通过
(8)把客户名改为xuewei(这是实际要插入的数据),DB检查点值仍为where,回放,看结果全通过删除DB中第10条以后的数据,重新回放,结果显示为xuewei通过,因为xuewei被成功的写入了DB,但是where没有写入,DB中没有曾经写入的数据
删除DB中的第10条以后的数据,将xuewei和where对调,重新回放
参数传递(了解)
1、录制小飞机脱机版
2、右击Action1——Action Properties——parameters
(1)输入参数名为username,默认值为what(不要加引号)
(2)输出参数名为output1
3、点击Agent Name——参数化——选择username
4、添加检查点:在密码之前,验证文本值what(预期)
5、Run
输出参数(可以不讲)
1、续上,右击Action1——Action Properties——parameters
(1)输出参数名为output1
2、在关键字视图中选择Agent Name,点击工具栏步骤生成器(或F7)
3、operation选择GetROProperty,下面的property的value值为text
4、点击Return Value,选择output1
5、在上面代码的下一行加入msgbox parameter("output1")可看输出值
环境变量
1、续上,最好少用,占内存
2、工具栏settings(QC工具的左侧)——Environment——可大致看一下built-in,此处选择user-defined——添加,起名为myuser值为when(预期值,此处不能改变输入值)
3、对Agent Name参数化,选择环境变量
4、Run
Action拆分
1、Action基础
(1)类似于函数
(2)可以分组脚本,是一个步骤集
2、录制小飞机脱机版
(1)录制时首先输入Denver到London,insert
(2)对Insert Done插入同步检查点,属性名选择text,属性值输入"Insert Done…"
(3)修改London到Denver,update
(5)回放
(6)参数化:update前的出发地、目的地
(7)再加一条Paris到London(共两条用例数据)
(8)回放2次,第2次跑不起来,出错了,原因在于录制时的选项,只能回放一次
3、Action拆分
(1)在前面的用例执行时,登录、插入、更新都会重复执行两次,实际上登录和插入只需要一次,拆分可以解决(2)选择一个分界线,如第1个Flight Reservation,点击工具栏“Split Action”(分界线属于下一个Action)(3)netsed为拆分为父子关系,此处现在第1项
(4)输入1st名字为login,描述为登录,2nd为flight,描述为订票
(5)双击展开flight,在下面的检查点下面分割为insert和update
(6)双击展开update,找到最后一步,分割出close
(7)查看Data Table,可见参数表在Global中,另外可见分类的子参数表
(8)回放,可见测试包括登录、插入在内完整地走了两遍(在结果中也可以看出来)
4、局部参数化
(1)上面的例子,参数在Global中,所以对整个测试都是跑两遍
(2)修改参数化:把出发地、目的地的参数选项改为Current action sheet(参数会自动复制至此)
(3)删除Global表中的列
(4)回放,结果显示登录、插入只执行一次,但是更新也只执行了一次,与期望的两次不符
(5)定位到Test Flow——右击update——Action Call Properties——Run on all rows(settings管全局)(6)回放,结果显示登录、插入只执行一次,更新执行了两次
(7)保存此Action
Action调用
1、新建一个测试——回到关键字视图——右击Action Properties——改名如Main,描述main(Reusable表示可以复用,即可被调用)
2、菜单“插入”
(1)Call to New Action:调用新的Action
(2)Call to Copy of Action:调用其他代码,复制一份,作为自己的,点击此项
<1>在From Test中选择已经保存的测试
<2>在下方的Action中选择login
<3>Edit new…表示可以修改代码,此处不选
<4>ok
(3)点击Main——Call to Existing Action:类似于连接其他代码,这属于调用外部测试
<1>在From Test中选择已经保存的测试
<2>在下方的Action中选择insert
<3>Location选择At the current step(事先点击main才可)
<4>ok
(4)依照(3)添加update、close
(5)Run,看结果,update只允许了一次
(6)右击update的Action Call Properties,run all rows
(7)再次Run,可见update运行了2次,其他各一次
Msgbox
1、函数语法
(1)调整字体大小
<1>Tools菜单——view options
(2)Msgbox “消息内容”,按钮类型,标题
<1>1:确定和取消
<2>16:错误图标
<3>32:显示问号
<4>48:显示叹号
<5>64:显示消息
2、锁键盘和鼠标
Public sub MsgboxTimeOut(Text,Title,Timeout)
Set wshshell=createobject("wscript.shell")
wshshell.Popup Text,Timeout,Title
End Sub
systemutil.BlockInput 'lock mouse and keyboard
msgboxTimeout "hi","STOP",5 '5s
systemutil.UnblockInput
描述性编程
1、主要用于QTP不识别对象或者能识别但对象并不在对象库中时。
2、简单录制小飞机,从对象库中删除Agent Name——Run会出错
3、先打开小飞机登录界面,点击spy工具按钮,把spy窗口移开露出登录窗口,点击Agent Name,记住attached text,不要点击ok,否则就不是编程了,在输入用户名这一行注释掉,加入一行代码:dialog("Login").WinEdit("attached text:=Agent Name:").Set "when",这句话会被放入临时对象库
4、运行
场景批量运行
1、开始——QTP——Tools——Test Batch Runner
2、单击工具栏“添加”按钮——选择多个场景——点击工具栏的“运行”(不要关闭本窗口)
<1>不能运行,是因为QTP不允许其他程序运行测试
<2>点击工具栏--选项按钮——Run——Allow…
<3>重新运行测试即可
3、结果是分别存储的,不会冲突
场景恢复
1、引入
(1)如录制计算器时,突然弹出一个Netmeeting,挡住了计算器,录不下去,停在那里了,碰到了意外情况。
这时,可以重复录制,也可以按一些键继续录制,或者调用一些脚本
2、录制记事本
(1)开始——程序——附件——记事本,写入一些文字
(2)文件——保存——esc取消——关闭——不存
(3)Run回放,通过
3、模拟错误
(1)找到代码中的esc一句,注释掉,模拟错误
(2)在上一句的下面加上window(“记事本”).activate,表示使记事本窗口获得焦点
(3)运行,出错
4、场景管理(场景恢复)
(1)场景管理器
<1>Resources——Recovery Scenario Manager【sei’nariou】
<2>New Scenario按钮,看一下向导内容,提示会创建一个触发器——next——选择事件:
○1pop-up…:当弹出一个对话框时
○2object-state:当一个对象的属性值匹配某状态时,如一个控件置灰时
○3Test run error:当测试出现错误时,此项最常用
○4Application crash:当应用程序崩溃时
此处,选择第三项
<3>选择Error:
○1Item in list or menu is not unique:操作项有多个同名选项,如右击打开方式有两个记事本等○2Item in list or menu not found:选项没找到
○3One or more objects responds to the physical description:对物理描述有多个响应,如测试时打开了两个记事本,QTP会糊涂
此处,选择object is disabled(对象不可用)——next——next
<4>确定恢复的操作
○1键盘或鼠标操作:即按键盘或鼠标
○2关闭应用进程
○3调用函数
此处选择第一项,next——选择第二项,即点击esc
<5>取消继续添加的选项“Add…”(不选),决定恢复后的行为——选择第一项,重做当前步骤,并继续
<6>起名字如r1,描述一下——完成——关闭——保存为如r1
(2)关联场景
<1>文件——设置——Recovery
<2>单击添加(按钮)——找到r1——注意选项Active recovery scenario:选择on error,表示出错时场景恢复——ok
(3)Run回放(得单击一下另存为窗口使其获得焦点才可以执行下去)
5、场景恢复的另一方法
(1)file——Settings——Recovery——删除场景恢复r1
(2)单击工具栏的“option”按钮——Run——screen capture——选中Save movie to results,即出错时录屏——需要安装录制驱动,点击“install”安装即可(3s左右)——ok
(3)Run,最好事先存一下,否则找不到录像文件
(4)出错后stop
(5)在结果窗口中,右侧,点击Screen Recorder——点击绿色三角形看录像(.fbr文件)(也可在开始菜单中找到QTP下的HP Micro player播放)。