环境:QTP12

  • 一次性加载页面上的所有对象到object Repository
        添加object到repository,选择页面,在define object filter中选择“all object types”:

        QTP:测试脚本录制与编写、问题汇总


  • 添加childobject到repository
        Ctrl键按下,点击parent object,在child object出现后,Up Ctrl键、同时快速的点击child object
  • 【录制用例-1】
        1、添加Object到Resources:路径Resources—Object Repository,选择界面上的Object菜单—Add Objects to local...
        2、在【keyword view】分页,单击添加对象,选择“Object from repository”,选择已添加的object
        以录制web 应用的登录-退出为例说明:
            >>电脑上其它的应用都关闭/最小化,打开IE浏览器进入web 应用的登录界面,保持最大化显示;
            >>打开QTP测试工具,按照上述路径准备添加Object,此时QTP工具会最小化,然后显示出后台的IE界面;
            >>action下选择 添加object,选择已添加的Object:点击用户名输入框即可完成添加;
           >>修改输入值username输入框的值:在【keyword view】视图中单击该元素对应的“Value”区域输入要填充的内容;

            目前就用到WebEdit、WebElement对象。

  • 【录制用例-2】

        在【expert view】选项卡页面编码。

  • 【录制用例-3】
        以record的方式录制。以录制Flight为例说明:
            >>后台打开flight登录界面
          >>单击QTP工具的record,此时QTP工具会最小化,然后显示出Flight登录界面,按照要测试的步骤执行(单击username输入框,输入内容—>单击密码输入框,输入 内容—>单击登录),录制完毕后Stop,保存用例;
        此方法录制用例的弊端:
            >>会录入无效的操作步骤
            >>对象识别不准确,导致脚本在运行时通不过(报object not visible错误)。在录制丽江ICC一级、二级地址时,未识别出“Case_CBBAddressOne”对象,直接识别的是下拉框点击的操作,

  • 查看Object的属性:
        先打开被测的应用程序/web页面,QTP工具—>Tools—>Object Spy...,如下图:
        QTP:测试脚本录制与编写、问题汇总
        QTP11版本:对象识别出来后,可添加到Repository:点击图标。


  • 启动时add-ins的选择取决于被测对象编程所选用的方式(控件类型):

        录制WFC客户端的脚本:启动时add-ins选择:web,.NET,WPF

        录制web脚本:启动QTP时add-ins选择“Web”;

        录制VB应用程序脚本,启动QTP时add-ins选择“Visual Basic”;

    查看当前启动的QTP选择的add-ins:Help—>About QTP;


  • 在一个测试脚本中添加多个Action:Insert—Call to new action。

        一个测试脚本中有多个action,若在action0中控制各个action的启动,修改action0的脚本后需要重启才能生效,故而不建议这么使;可以在非action0中的action中控制其他action的启动(作为mainAction),然后在action0中启动mainAction。


  • 在win7-32bit上安装,出现提示【少了Microsoft Visual C++ 2005 sp1运行时组件,安装该组件时会提示”命令行选项语法错误,键入命令/?可获取帮助信息“,无法正常安装

        解决方案:进入QTP安装包目录 ...\Extensibility and Toolkits\ExtAccTool\Common\vc2005_sp1_redist\,安装vcredist_x86

  • 每行代码运行间隔设置

        【方式一】全局设置每行代码运行间隔:Tools—>Options—>Run分页,设置run mode:

        QTP:测试脚本录制与编写、问题汇总

        PS:需要让 低速方式运行脚本生效,需安装Microsoft Scrip Debugger,否则运行脚本的时候会提示:

        QTP:测试脚本录制与编写、问题汇总

        【方式二】在需要延迟运行的代码后添加wait语句:wait delay_time(ms)

  • 脚本运行过程中失去鼠标焦点,脚本运行失败,提示object not visible

        在代码中屏蔽鼠标/键盘事件:SystemUtil.BlockInput ,在脚本运行过程中鼠标或键盘操作无效;运行结束后释放阻塞:SystemUtil.UnblockInput 。

        手动终止脚本运行:

相关文章: