QTP 在进行text area output时 电脑蓝屏怎么解决,求解

QTP自学笔记_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
QTP自学笔记
阅读已结束,如果下载本文需要使用
想免费下载本文?
你可能喜欢查看: 1316|回复: 5
QTP循环,我想一个循环得到结果以后再进行下一次循环,怎么弄
该用户从未签到
本帖最后由
15:54 编辑
大家好,我现在要用QTP进行自动化测试,测试的界面如上。各个参数参数化后,总共要循环100次,但是,每次循环不会马上得到结果,需要等待不固定的时间(30分钟左右)才会出结果(结果出来后,上图中的请等待框会变成回验已完成),必须要结果出来以后才能进行下一次循环,我想知道怎么处理才能让QTP在循环时等到结果出来再进行下次循环,请高手指教,最好能写一段代码,非常感谢~
本帖子中包含更多资源
才可以下载或查看,没有帐号?
该用户从未签到
自己顶一下
该用户从未签到
QTP的windows标准控件基本都包含GetVisibleText , GetTextLocation 这样的方法,当你的结果返回后,界面肯定有变化,比如某个winEdit的内容发生变化,你就每5秒钟获取一次这个控件的内容,一旦发生变化就执行下一次循环,否则继续等待,这样应该可以吧,试试~
TA的每日心情擦汗昨天&09:27签到天数: 186 天连续签到: 10 天[LV.7]测试师长
这个你在循环的过程中要好好写你的测试步骤了吧,具体应该和你循环多少次没关系和业务流程有关
for i=0 to 99
该用户从未签到
xjwldlover
& &刚刚spy了一下图上那个状态变化框,发现是javaobject对象,意思就是识别不了这个对象,然后更抓不出这个框中间的文字啊、怎么搞呢
该用户从未签到
回复&&xjwldlover
& &刚刚spy了一下图上那个状态变化框,发现是javaobject对象,意思就是识别不了这个 ...
<font color="#2681255 发表于
额,javaObject中output , getROProperty , checkproperty ,tostring 这些方法试试,应该可以得到信息内容。这些方法都依赖于QTP的spy信息,LZ不妨把spy信息也发一下,大家学习下JAVA应用的测试。
经验推论,未必正确,望楼主多试~
站长推荐 /2
小伙伴们踊跃闯关,赢取测试积点,换取豪礼,还等什么,赶快行动吧~
赏金公告:悬赏任务已,小伙伴们赶紧行动起来,赚取,去获取奖励吧!
Powered byQTP&-&网站上的验证码录制
经过以上两个帖子的学习,终于至少可以录制那些比较“清晰”的验证码了。所谓清晰,是不带干扰背景的,但是至少可以获取累死的文字,所以说明方法还是成功了。所以还是挺高兴的,在这里记录一下方法:
Example&#58;
思路:将验证码图片里的文字获取到datasheet,然后得到datasheet里的值set到验证码的输入框
Window("注册 - 开心网 - Microsoft
Internet").WinObject("Internet Explorer_Server").Click
Window("注册 - 开心网 - Microsoft Internet_2").WinObject("Internet
Explorer_Server").Output CheckPoint("Internet
Explorer_Server_2")
Dim validation
validation=datatable.GetSheet("Global").GetParameter("output").ValueByRow(1)
Browser("注册 - 开心网").Page("注册 - 开心网").WebEdit("code").Set&
validation
具体代码请参考qtp
test目录下的Validate_Data_Web.&
这里有几个知识点:
CheckPoint可以将某个对象作为output的值,写到qtp自带的datasheet中。但是这里的验证码是个图片西西的东西,所以经过论坛指点,选用text
area output values。查了下qtp的help:You can create a text area output
value only while recording on Windows-based applications—Standard
Windows, Visual Basic and ActiveX.
因此要基于windows-base的application,这里又有两个方法可以做到这一点:1)录制的时候选低级录制
2)录制两段script,其中一段刚打开qtp时将web插件去掉,就变成windows-base的了。然后在录制的时候,假如在那个验证框这里右键,就只有insert
output value这个选项,没有text area output,但其实可以在insert菜单的output下选text
output&values,然后修改输入到datasheet的column名字,比如就叫output。
2. 现在剩下的问题就是:我录制的开心网的注册界面的验证码在很下面,假如有些页面最大化后还不能显示这个验证框,一定要下拉到页底,该怎么操作呢?等待下面帖子的回复:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。Stack Overflow is a question and answer site for professional and enthusiast programmers. It&#39;s 100% free.
While recording in qtp using a text area check point to select some area. After recording and playback save the test cases. Now I want to know the x and y coordinates for the selected area. Is it possible to see the x and y values in result.xml or somewhere in saved test case?
67.2k147195
I do not exactly understand what you want. Maybe you can explain more in detail. For the time being, I give you some information you can use:
If you want the absolute coordinates of an object, use:
absX = myObj.GetRoProperty("abs_x")
absY = myObj.GetRoProperty("abs_y")
For the coordinates of an object relative to its parent, use:
relX = myObj.GetRoProperty("x")
relY = myObj.GetRoProperty("y")
To get the relative coordinates of the checkpoint of the text area, use:
cpRelX1 = CheckPoint("text area checkpoint").GetProperty("text_area_x1")
cpRelX2 = CheckPoint("text area checkpoint").GetProperty("text_area_x2")
cpRelY1 = CheckPoint("text area checkpoint").GetProperty("text_area_y1")
cpRelY2 = CheckPoint("text area checkpoint").GetProperty("text_area_y2")
If you want to have the absolute location of the CheckPoint during playback, you need to sum the absolute coordinates of the text area and the relative coordinates of the checkpoint:
upperleft corner:
realCheckPointXduringRuntime = absX + cpRelX1
realCheckPointYduringRuntime = absY + cpRelY1
For the lowerright etc., you just can combine the coordinates:
lowerright corner:
lrX = absX + cpRelX2
lrY = absY + cpRelY2
lowerleft corner:
llX = absX + cpRelX1
llY = absY + cpRelY2
upperright corner:
urX = absX + cpRelX2
urY = absY + cpRelY1
Your Answer
Sign up or
Sign up using Google
Sign up using Facebook
Sign up using Stack Exchange
Post as a guest
Post as a guest
By posting your answer, you agree to the
Not the answer you&#39;re looking for?
Browse other questions tagged
Stack Overflow works best with JavaScript enabledQTP学习笔记_软件学园_科技时代_新浪网
QTP学习笔记
QuickTestPro
  【IT168 技术文档】QTP学习笔记(一)  一.测试目的:在测试过程中,需要使用&模拟器&来产生测试需要的数据,因为需要统计软件的数据准确率,所以每次使用的数据都是相同的,这样会产生一定的重复工作量,并且手工产生数据会有一定出错的机率,所以使用自动化测试工具录制脚本,每次执行测试之前运行该脚本可使用保证测试速度和数据的准确程度。  二.录制模式和方法:因为暂时没有安装.net插件,所以脚本采用&analog模式&录制。测试需要用到的数据分为A1、A2两大类,每个大类的数据又分为16小类,A1采用action调用的方式进行录制,A2采用顺序录制方式。  三.Action调用的操作方法:  分别在多个脚本中完成子类数据的action录制,而后集成到action_A1中,在QTP界面insert call to copy of Action from test:脚本名称action:需要调用的action?location:After the current step  注:在涉及action调用的情况下进行action copy不能连同它所调用的action一块拷贝过来,它所调用的action需要另外添加。  四.评价  1.增加新action的时候,如果采用&After the current step&方式,可使脚本的步骤层次分明,但是这种录制方式在调用的action级数较多时,修改会非常的麻烦,删除其中的一个action会连同它的子action一起被删掉。  2.采用&At the end of the test&方式可避免上述问题,但是录次不是很分明。在软件达到一定规模的情况下,建议两种增加action的交替使用,增加脚本的可用性。  五.学习到的内容  1.插入等待时间  Wait 秒,毫秒  例如:wait 10 等待10秒  Wait 0,200 等待200毫秒  2.添加新action  Inserit?call to new action  3.在本脚本中实现action调用  Insert?call to existiong action  4.添加新步骤  Insert?new step  5.执行当前action  Automation?run current ation  6.从当前步骤执行  Automation run current step  7.逐步调试运行  Debug?step into  8.设置运行脚本的模式  Tools--options run选项卡  9.设置运营脚本时的各项数据  File settings run选项卡 超时等待,发生错误时是否退出执行并弹出提示,出错时是否保存image信息等。
  QTP学习笔记(二)  一.测试目的:在软件系统联调的过程中,子系统B担当了提供核算数据的任务,所以对子系统B的操作很多是重复的步骤,并且B所提供的数据需要十分准确,所以采用自动化测试来解决这个问题。  二.处理方法:  1.采用顺序录制方式,不涉及其他调用  2.采用&Analog Recording&录制模式与常规录制模式结合的方法  三.评价:  1.缩短了执行时间,每个脚本平均运行时间为1分钟  2.减少数据录入错误  四.学习到的内容:  1.设置action的属性  将action的属性设置为&Reusable action&后,该action可被其他action或其他脚本调用  2.VBS脚本中&do& &until&循环的使用  例如循环两次  Dim m  M=0  Do until m=2  Runaction&01_01&,oneIteraction  M=m+1  Loop  3.VBS脚本中&for nest&循环的使用  例如循环执行10次  Dim i  I=0  For i=0 to 9 step 1  & &  I=i+1  Next
  QTP学习笔记(三)  一.测试目的:在软件系统联调的过程中,子系统B担当了提供核算数据的任务,所以对子系统B的操作很多是重复的步骤,并且B所提供的数据需要十分准确,所以采用自动化测试来解决这个问题。  二.问题及解决方法:  1.问题:录制脚本的过程上通过分action录制方式,将各业务分别录制,但通过实践,将action的属性设置为&after the current step&方式,使action的结构层次过多,不便于后期维护  答:将新添加的action属性设置为&At the end of the test&方式  2.问题:某一段录制过程需要重复执行时,采用&For& &next&循环,其中&step&指定的步骤发生错误,导致循环未被执行  答:&for& &next&循环中的step是指循环中包含的步骤的顺序号,而不是针对整个脚本而言  3.问题:单步调试通过的步骤在run的时候执行发生错误  答:暂时未找到更好的解决方法,仍采用重新录制脚本的方式解决  三.评价:  1.该脚本的实际执行时间为25分钟,同样的操作由测试人员手工完成需要至少2个小时,节约了时间成本,减少了人为出错机率。  2.完成B测试工作量的60%,减少了测试成本。  3.录制初期没有将软件测试流程考虑全面,导致脚本执行度较低,并且质量差,不适用于当前的系统测试,后经多次返工才日趋完善。  四.学习到的内容  1.action属性的正确设置方法  2.若在其他action中编写&RunAction&action名称,oneIteration来达到action调用的目的  3.在同一个action中,重得执行的步骤可通过拷贝、粘贴&专家视图&中的编码完成
  QTP学习笔记(四)  一.测试目的:在软件系统联调的过程中,子系统B担当了提供核算数据的任务,所以对子系统B的操作很多是重复的步骤,并且B所提供的数据需要十分准确,所以采用自动化测试来解决这个问题。  二.问题及解决方法:  1.问题:因为界面中各个控件的集成度较低,采用&analog recording&模式录制脚本,但因为各编译版本界面的逻辑位置发生改变,导致脚本只能够运行在当前录制的脚本上。  答:更新各个action中的对象,采用updata的方式将界面对象进行更新  三.学习到的内容  1.更新action对象的方法  Resources?object repository?action:要进行对象更新的action?选中对象?object?update from application?指定到更新目标  2.通过对象管理器添加界面中的对象  Resources?object repository manager?object?navigate and learn?选中界面?navigate and learn窗体中选择&learn&按钮?退出时保存即可
  QTP学习笔记(五)  一.测试目的:能够在TD中调用已编写好的QTP脚本,实现自动化测试的管理。  二.操作方法  1.登录TC主页面?add_in page?more testdirector add_ins选择项--,下载连接QTP的插件,并安装  2.打开QTP脚本,在界面工具栏中点击&quality center connection&按钮,在&server url&中输入TD的地址,&project connection&中各项按TD中的配置添加  3.tools?options?&run&选项卡?勾选&submit a defect to quality center for each failed step&,&allow other mercury products to run tests and components&  4.登录TD在&REQUIREMENTS&选项卡中添加测试项目,在&TESTPLAN&选项卡中添加测试计划,并将两项内容在&REQUIREMENT&中关联起来  三.问题及解决方法  1.问题:完成操作方法中&1~3&步后并没有在QTP脚本中增加连接成功的标志  2.问题:在为TESTPLAN增加的step配置&test script&时TD退出  3.问题:即使在生成&test script&时TD不退出,加载QTP脚本也会失败,偶尔连接成功,脚本为&read_only&模式,脚本内容不可被修改并且原录制步骤被删除  答:上述1~3问题的解决办法见QTP学习笔记(七)  四.针对上述问题的个人意见  上述产生有可能与TD是破解版本有关,因破解时部分内容出错导致,另一种可能是启动了瑞星防火墙。  五.学习到的内容  安装TD之前在server服务器上应事先安装oracle,sql server或access数据库,用来存储数据。
  QTP学习笔记(六)  一.测试目的:创建QTP对象库  二.操作方法  1.保存对象  Resources?object repository?file?export local objects  2.在新建action或新建脚本中引用对象  Resources?associate repositories在&repositories&中选择对象文件,在&available actions&中选择调用对象的action  三.学习到的内容  1.在保存对象时,每个action的对象单独保存,同样,引用对象时也需要逐一引用(全局对象除外),建议为每个脚本创建一个对象文件夹,用来与其他脚本进行区分  2.QTP的&.net&插件,&qtp92-net-addin.zip&安装后仍不识别&data gridview&控件中的下拉列表,只能用&analog recording&模式录制脚本
  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&不适用于动态统计图,即使数据一致,在执行结果中仍会指明该检查点执行时出现错误
电话:010-
不支持Flash

我要回帖

更多关于 电脑开机蓝屏 的文章

 

随机推荐