环境:QTP12
- 一次性加载页面上的所有对象到object Repository
- 添加childobject到repository
- 【录制用例-1】
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】
>>后台打开flight登录界面
>>单击QTP工具的record,此时QTP工具会最小化,然后显示出Flight登录界面,按照要测试的步骤执行(单击username输入框,输入内容—>单击密码输入框,输入 内容—>单击登录),录制完毕后Stop,保存用例;
此方法录制用例的弊端:
>>会录入无效的操作步骤
>>对象识别不准确,导致脚本在运行时通不过(报object not visible错误)。在录制丽江ICC一级、二级地址时,未识别出“Case_CBBAddressOne”对象,直接识别的是下拉框点击的操作,
- 查看Object的属性:
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:
PS:需要让 低速方式运行脚本生效,需安装Microsoft Scrip Debugger,否则运行脚本的时候会提示:
【方式二】在需要延迟运行的代码后添加wait语句:wait delay_time(ms)
- 脚本运行过程中失去鼠标焦点,脚本运行失败,提示object not visible
在代码中屏蔽鼠标/键盘事件:SystemUtil.BlockInput ,在脚本运行过程中鼠标或键盘操作无效;运行结束后释放阻塞:SystemUtil.UnblockInput 。
手动终止脚本运行: