QTP学习笔记(七) 一.测试目的: 1.编写自动化脚本,代替手工测试 2.使用TD跟踪测试结果,评价软件质量 二.问题及解决方法 1.问题:录制脚本时QTP窗口为最大化状态,阻碍鼠标的移动轨迹 答:recording?最小化QTP窗口,以后每次录制时QTP窗口都会自动执行最小化 2.问题:TD与QTP的连接失败(同QTP学习笔记(五)) 答:为TD安装\"TDConnect.exe,SysAgent.ext,TDClientSideInstallation.exe\"三个插件 3.问题:因为使用破解版TD所以在添加\"Test Script\"时TD会自动退出 答:在指定folder中创建\"WR_Automate\"类型的TEST,查看该TEST的TEST Script,再选中新创建的\"Quicktest_test\"类型的TEST,TD就不会退出了 4.问题:QTP加载插件后仍连接不上TD 答:为QTP安装插件\"QTP安装包\" setpup.exe quality center加载项,安装自带的插件比较好用 5.问题:QTP远程连接TD失败的问题 答:1.查看该请求是滞被防火墙过滤 2.网络管理服务器及TD服务器上是否安装了网管软件 符合上述条件的时候,QTP远程访问TD会发生失败 6.问题:与TD建立连接后脚本的编辑问题 答:与TD连接后,QTP自动生成与TD的TEST名称相同的脚本,可对该脚本进行编辑、保存、另存等与单机使用QTP创建脚本相同的操作,建议每个脚本在本机另存一份,并保留脚本对象,创建对象库。与TD连接后,QTP默认加入的插件被修改为\"web插件\",新建测试脚本时要注意。 三.学习到的内容 1.QTP与TD建立连接时所指定的服务器名、Domain、Project、UserName、Password信息应与TD登录时一致,否则会发生连接失败的错误 2.为TD TESTPLAN Folder TEST增加了TEST Script后,不可再编辑该TEST,如\"step\"的设置 3.\"TEST Script\"运行后的执行结果在\"REQUIREMENTS\"中可查看到,以此可作为评价软件质量的依据之一 4.TD REQUIREMENT REQUIREMENT Child REQUIREMENT 可以为其指定多个\"TEST\"用例,被关联的用例不可编辑 5.与TD建立连接的QTP脚本运行结果自动保存在TD中,连接成功后QTP的\"Remote Agent\"进程自动启动 6.QTP与TD服务器远程连接 工具栏?Quality center Connection:指定Server URL为远程服务器,并输入正确的Domain、Project、Username、Password即可 QTP学习笔记(八) 一.测试目的: 使用QTP建立较为完成的测试脚本,通过TD对自动化测试的流程进行系统的管理。 二.问题及解决方法: 1.问题:由TD的TEST?Test Script启动QTP脚本后,QTP在启动时自动只加载\"web插件\",并且在录制脚本的过程中,点击\"Record\"按钮后,弹出web页面与QTP中心连接,严重影响脚本的录制 答:1.TD TEST PLAN Folder TEST Test Script启动QTP并创建新的测试脚本 2.保存该脚本,退出QTP 3.重新启动QTP,加载\"Active X\"控件 4.创建新脚本,并连接TD 5.open open Test from Quality Center打开步骤1所创建的脚本即可 三.学习到的内容 1.更改当前脚本加载的插件 在启动QTP的时候将所有插件都色选上,打开脚本,File Settings Properties选项卡 选择modify按钮即可 2.TD中为TEST添加Steps后,点击Generate Script Quicktest Test可将设置的steps加载到测试脚本中 3.在录制脚本步骤前仔细规划脚本的结构,定义好各Action完成的任务,及Action之间的调用关系,要比录制执行步骤后再添加新Action容易 QTP学习笔记(九) 一.测试目的: 1.将已经完成录制的脚本中,每个叶子\"Action\"设置为\"Reusable Action\"属性,以方便下一段录制过程中的Action进行调用 2.修改TD上TEST的名字,对已经建立了测试脚本的测试用例进行重命名 二.问题及解决方法: 1.问题:将已经录制了执行过程的action设置为\"Reusable Action\"属性后再设置成普通属性,执行脚本时,脚本不识别界面对象,导致脚本不可执行。 答:在脚本录制成功能一,将脚本的对象分别保存到本地对象库和TD对象库中,使用已经保存的对象文件,完成该测试脚本的对象重新加载。 注:不要随便更改已完成录制任务的\"Action\"属性 随时为已完成录制的脚本做对象保存工作 2.问题:在TD上修改了TEST的名称后,执行脚本时,该脚本不能识别界面对象 分析: 1.该脚本已经与测试用例关联,且为QTP的当前脚本,修改TEST名称失败时,可将QTP关闭 2.选中脚本中第一个叶子action,对其进行对象更新,完成一个步骤即可,然后保存该脚本 3.重新保存脚本对象,分别存储地本地和TD上 注:如不是特别要求,最好不要对已完成脚本录制的TEST进行属性修改的操作。 三.学习到的内容: 1.从TD上导出对象文件 选中TEST Attachments 选中对象文件\"save as\"按钮 2.在TD上记录TEST中脚本的运行结果,并对脚本的运行进行设置,跟踪脚本的执行情况 a.在\"TESTLAB\"页中选中\"Root\"项--New Folder(添加项目名称)New Test Set(添加子项目名称),在\"Execution Grid\"或\"Execution Flow\"页中点击\"Selects Tests\"选择相关的测试用例,其中\"Run\"和\"Run Test Set\"按钮可以从TD上直接运行QTP,以\"Read_only\"的模式打开脚本并执行 b.在\"Excution Grid\"页中,可到TEST脚本的执行情况,通过双击测试条目可以查看到\"Test Rum Properties\"更详细的情况 c.在\"Excution Flow\"页中可设置TEST的执行时间,执行关系等 d.在\"Test Rum Properties\"中可设置有关TEST脚本执行的选项 QTP学习笔记(十) 一.测试目的: 1.将已经完成录制的脚本中,每个叶子\"Action\"设置为\"Reusable Action\"属性,以方便下一段录制过程中的Action进行调用 2.修改TD上TEST的名字,对已经建立了测试脚本的测试用例进行重命名 二.问题及解决方法: 1.问题:为测试用例添加好执行时间后,在该设置时间已到的情况下脚本没有被执行 答:设置并更改了执行时间后,点击〖Run〗按钮,在\"Execution of … …\"窗口设置〖Run of Host〗的主机域名,可双击设置,当执行脚本的PC为本机时可选择〖Run All Tests Locally〗选项。当存在多个测试用例时,可使用\"ctrl+Test\"的方式进行多项选择,然后点击〖Run〗按钮等待,或点击〖Run All〗按钮执行所有TEST。 2.问题:怎样通过参数化测试步骤来实现脚本的循环执行? 答:在需要检查数据的测试步骤,点击[value]字段 [<#>]按钮,进入\"value configuration options\"窗口àParameteràDataTableàNameà为参数化取名àGlobal sheet 注:1.Global sheet:全局,适用于Action较少,需要全局执行的情况 2.Current action sheet(local):只适用于当前Action,不可被其他Action采用 3.这种参数化不适用于执行完成参数化的步骤后,关闭或退出等影响界面存在的操作。 3.问题:通过TD的设定时间来执行TEST时,下拉列表的选择速度变慢 答:解决办法暂无 三.学习到的内容: 1.使用TD定时执行后,脚本的执行结果直接存储到TD中,不在执行结束时直接弹出,并且各步骤的执行时间间隔不再受QTP控制,TD的默认时间 2.可以通过QTP为TD创建TEST,步骤如下: QTPàNewàNew TestSave(已连接到TD的情况下)选择TD上的对应测试项命名OK 3.使用随机数来参数化测试步骤 QTP选择要参数化的步骤value<#>ParameterRandom Number或者采用专家视力进行编辑 QTP学习笔记(十一) 一.测试目的: 1.使用QTP录制\".net\"应用程序的脚本 2.在网络管制的情况下使用TD管理自动化测试 二.问题及解决方法: 1.问题:QTP自带插件不识别\".net\"应用程序中的控件,但QTP的\".net插件\"仅为试用版,限期为14天 答:在测试机上安装虚拟机,划分足够大的内存及硬盘空间,安装QTP及其\".net\"插件,在虚拟机中完成脚本的录制、回放。插件过期后,再重新建立虚拟机,重复使用。需要注意的是在虚拟机中保存的脚本及对象要在测试机上及时备份。 2.问题:因网络管制导致虚拟机上的QTP连接测试机的TD服务器失败 答:同样在虚拟机中安装TD服务器(以下称为VTD),在该服务器中创建与测试机上的TD服务器(以下称为STD)相一致的各个测试项目,定期将VTD的内容保存到STD中。 三.学习到的内容: 1.为脚本添加检查点 a.\"Analog Recording\"录制模式不适用于检查点的添加及过程参数化 b.对于文本类的控件,可添加\"Text Checkpoint\"和\"Text Area Checkpoint\"两种类型的检查点,前者适用于单个文本控件的检查,后者适用于文本对象集合的检查 c.所有对象都可使用\"Standard Checkpoint\",但涉及特殊要求的情况,如数据库数据的检查等,标准检查点就不太专业了 d.在编辑状态下只有\"Standard Checkpoint\"\"Database Checkpoint\"\"XML Checkpoint(From Resource)\"检查点可用,其他为置灰不可用状态 2.添加检查点的脚本,执行通过没有发生错误的情况下,在回放结果Test Results文件中\"Status\"字段的值为\"Passed\"并记录通过测试的检查点数量;如果在执行的过程中,执行结果与检查点的值不同,则会在TD中自动添加相应的BUG 3.做了参数化的脚本,在执行后Test Results文件的\"Teration#\"字段会显示出参数的索引编号及执行结果 4.Test Results窗口中,可以通过点击连接TD的图标,与TD建立连接,查看保存在TD上的脚本执行结果 5.在GUI应用程序中\"Bitmap Checkpoint\"不适用于动态统计图,即使数据一致,在执行结果中仍会指明该检查点执行时出现错误 相关阅读: QTP学习笔记(上) |