QTP小强老师学习笔记

合集下载

QTP学习与实践经验总结完整版

QTP学习与实践经验总结完整版

QTP学习与实践经验总结完整版QTP(QuickTest Professional)是一款自动化测试工具,用于测试Web、Windows和Java应用程序。

在学习和实践QTP过程中,我总结了以下经验。

学习阶段:1.了解基础知识:首先,了解测试的基本概念和QTP的基本功能。

可以通过阅读QTP的官方文档、参加培训课程或查找相关教程来进行学习。

2.熟悉QTP界面:熟悉QTP的界面和各个功能面板的位置和作用,学习如何创建、保存和运行测试用例。

3.了解对象识别:掌握对象识别的原理和方法。

QTP通过识别应用程序中的各种对象来执行操作和检查结果。

学会使用QTP的对象仓库和对象识别器来管理和识别对象。

4.学习VBScript编程:VBScript是QTP使用的默认脚本语言。

学习VBScript编程语法和常用函数,可以加强对QTP脚本的编写和调试能力。

5.实践项目:尝试使用QTP对一个简单的测试项目进行实践。

这将帮助你熟悉QTP的操作流程和常见的测试任务。

实践阶段:1.制定测试计划:在开始测试之前,制定详细的测试计划。

根据需求,确定要测试的功能和场景,并编写测试用例。

2.创建测试对象库:根据应用程序的界面和功能,创建测试对象库。

这将包含应用程序中的各种对象及其属性和方法。

3.录制和回放脚本:使用QTP的录制功能来录制测试脚本。

在录制过程中,执行一系列操作,例如点击链接、填写表单和验证结果。

然后,使用回放功能来验证脚本的正确性。

5.调试脚本:在运行测试脚本之前,使用调试功能来检查脚本的正确性。

可以逐行执行脚本、查看变量值以及添加断点等。

6.批量执行测试:使用批量执行功能来运行多个测试脚本。

可以使用参数化和数据表来生成不同的测试数据,并生成详细的测试报告。

7.错误处理和异常处理:处理脚本中的错误和异常情况。

可以使用异常处理机制和错误定位功能来确定问题的根源。

8.维护测试脚本:随着应用程序的更新和变化,测试脚本也需要进行维护。

qt学习笔记

qt学习笔记

汇文教育;‎QFi‎l eInf‎o类1、‎q file‎i nfo提‎供有关文件‎系统中的,‎文件的名称‎和位置信息‎(路径),‎它的访问权‎限,以及它‎是否是一个‎目录或符号‎链接,该‎文件的大小‎和最后修改‎/读取时间‎也可用。

‎2、QFi‎l eInF‎o可以指‎向一个文件‎,一个相对‎或一个绝对‎文件路径,‎绝对文件路‎径开始与目‎录分隔符“‎/”或驱动‎器的规格(‎除了在UN‎I X),‎相对文件‎名开始有一‎个目录名或‎一个文件名‎,并指定一‎个相对于当‎前工作目录‎的路径.一‎个绝对路径‎的一个例子‎是一个字符‎串“/tm‎p /qu‎a ltz”‎,相对路径‎可能看起‎来像“sr‎c / f‎a tlib‎”,你可以‎使用这个函‎数isre‎l ativ‎e()来检‎查 qfi‎l einf‎o是否使‎用相对或绝‎对路径的文‎件,你可以‎调用函数c‎o nver‎t toab‎s()转‎换 qfi‎l einf‎o的相对‎路径为绝对‎路径。

这‎q file‎i nfo文‎件在构造函‎数中设置或‎后setf‎i le()‎,使用ex‎i sts(‎)看文件是‎否存在,s‎i ze()‎得到它的大‎小。

加‎速性能,q‎f ilei‎n fo缓存‎文件有关的‎信息,因为‎文件可以被‎其他用户或‎程序更改,‎甚至由同一‎程序的其他‎部分,这个‎函数ref‎r esh(‎),刷新文‎件信息,‎如果你想关‎闭一个qf‎i lein‎f o的缓存‎和强制访问‎文件系统每‎次请求信息‎,你可以调‎用setC‎a chin‎g(FAL‎S E).‎文件的类型‎是获得通过‎i sfil‎e(),i‎s dir(‎)和isS‎y mlin‎k()该‎文件的日期‎由 cre‎a ted(‎), la‎s tMod‎i fied‎() an‎d las‎t Read‎(),文件‎的访问权限‎由isR‎e adab‎l e(),‎isWr‎i tabl‎e() a‎n d is‎E xecu‎t able‎()获得。

(完整word版)QT基础学习知识整理

(完整word版)QT基础学习知识整理

QT基础学习知识整理1.重要内容:1)信号和槽机制2)事件处理机制3)布局管理器4)绘图5)网络6)多线程7)其他(定时器,中文显示)2.1 一个简单的例子不可免俗的,从最简单的基本窗口产生开始介绍,窗口标题就叫作First Qt!!好了,请新增一个目录hello,并在当中使用任一编辑器来编辑一个hello.cpp的档案,内容如下:hello。

cpp#include 〈QApplication>#include 〈QLabel〉int main(int argc,char *argv[]) {QApplication app(argc, argv);QLabel *label = new QLabel(”Hello!World! Orz。

”);label—〉setWindowTitle(”First Qt!”);label—>resize(200, 50);label—〉show();return app。

exec();}要使用Qt的组件,必须含入(include)相对应的头文件,程序的第一行包含的QApplication与Qlabel头文件,稍后才可以使用QApplication与QLabel两个组件的定义类别.每个Qt窗口程序,都必须有且只能有一个QApplication对象,它管理了整个应用程序所需的资源,QLabel 是Qt的图型组件之一,继承自QWidget,Widget这个名称来自Window Gadget,表示可视的使用者接口组件,可接受使用者的动作操作,文字画面、按钮、滚动条、工具列甚至容器(Container)等都是一种Widget.C++程序从main开始,再来进行Qt组件的初始化动作,在第一行中:QApplication app(argc, argv);QApplication负责程序的初始、结束及处理事件(event)的循环等,并提供基本的窗口外观,这个外观与系统的桌面环境有关,例如标题列的样式、窗口外观、系统功能键等,在不同的操作系统桌面环境下,会有各自不同的外观,QApplication 对象接受命令列自变量作为它的自变量,像是如果您没有设定窗口标题,且会使用执行文件的名称作为窗口标题名称,可以使用的自变量与其作用,可以查询Qt在线文件关于QApplication类别的说明。

QBQ笔记

QBQ笔记

QBQ阅读笔记我们今天时时在面对,并隐藏在当今组织当中的推诿、抱怨、拖延、执行不力、目标不能达成等许多表面问题背后的核心问题——缺乏个人责任感。

‚愿上帝赐我平静,接受我无法改变的人;愿上帝赐我勇气,改变我能改变的人;愿上帝赐我智慧,了解我自己这个人。

‛个人的责任感何在?1、关于个人责任QBQ的精髓是:借由提出更好的问题,立刻作出更好的选择个人责任感的不同,造就了个人事业的差异2、做更好的选择选择什么呢?不是下一个行动,而是下一个想法。

QBQ的基本精髓之一就是,每个人都需要为自己的所作所为作出选择,不但有责任为自己作出最好的选择,而且要为作出的选择负责。

有时人们自以为别无选择,因此说出:‚我不得不‛或‚没办法‛的话来,殊不知任何人永远都有选择的余地。

永远!即使决定选择‚不‛,也算是一种选择。

有了这样的认知,并为自己的选择负起责任,生命中美好的事物就将离你不远了。

请作更好的选择吧!3、问更好的问题几乎所有人在第一时间对外界事物,往往会作出负面的反应,脑海中浮现出‚错问题‛。

但是,如果每当需要作出选择的时候,我们都能够先以客观的思维方式,再深层次地考虑一下最开始面临问题背后的问题,或者说导致问题的真正内涵到底是什么,然后进一步修正一下自己的想法,再提出更好的问题,那么提出的问题本身,就将能够引导我们获得更圆满的结果。

QBQ的指导原则之一是:答案就在问题之中。

对初学者来说,以下是创造QBQ的三项简单指导原则:1 以‚什么‛或‚该如何‛这两个词来发问,而不是用‚为什么‛、‚什么时候‛或‚谁‛。

2 在所有问题中包含‚我‛字在内,而不是只包含:‚他‛、‚他们‛、‚我们‛、‚你‛或‚你们‛。

3 把问题的中心词放在动词上,也就是放在行动上。

Eg:‚我能做什么‛。

4、不要问‚为什么?‛以‚为什么‛这个词提出的问题,它们带有‚我是小媳妇‛的语气和心态,让人一听就把你归类为典型的可怜虫。

5、克服‚小媳妇‛心态一位男士在过去十年的军旅生涯中,部队长官可以接受的唯一回答是:‚责无旁贷,长官!‛——没有任何借口!他接受了它,相信它并奉行不悖。

QTP资源汇总

QTP资源汇总

1、QTP专业网站///////2、HP官方QTP主页https:///cda/hpms/display/main/hpms_content.jsp?zn=bto&cp=1-11-127-24^1352_4000_100__3、QTP第三方工具Test Design Studio的主页/products/test_design_studio/Default.aspx4、QTP WEB测试辅助工具IE Developer Toolbar下载页面/downloads/details.aspx?familyid=e59c3964-672d-4511-bb3e-2d5e1db91038&displaylang=en5、QTP论坛SQAForums论坛上的QTP版块:/postlist.php?Cat=0&Board=UBB20AdvancedQTP论坛上启动的一个QTP虚拟项目(围绕QTP附带的样例程序Flight开展):/forums/index.php/board,5.0.html6、自动化测试方面的网站///~wazmo/qa/#test_automation《软件自动化测试成功之道》学习资源:/Testing_is_believing/archive/2010/05/27/5628697.aspxQTP基础视频(《软件自动化测试成功之道》光盘视频):/topics/2823906ADO教程:/ado/index.asp自动化测试框架1、《测试对象级框架- QTestWare》/Testing_is_believing/archive/2010/01/03/5125592.aspx2、《QTP面向对象框架》/Testing_is_believing/archive/2009/12/19/5040680.aspx3、《自动化测试框架剖析》/Testing_is_believing/archive/2009/12/20/5042211.aspx4、《QTRunner》/Testing_is_believing/archive/2009/12/19/5037830.aspx5、《自动化测试框架开发5步法》/Testing_is_believing/archive/2009/12/17/5026712.aspx6、《QTP下基于XML+DP的关键字驱动DEMO》/Testing_is_believing/archive/2009/11/29/4900529.aspx7、《如何选择自动化测试框架》/Testing_is_believing/archive/2008/06/29/2595477.aspx8、《自动化测试框架设计指南》/Testing_is_believing/archive/2008/06/22/2576208.aspx9、《QTP的报告管理扩展框架- ReporterManager》/Testing_is_believing/archive/2008/01/27/2068905.aspx10、《透析QTP自动化测试框架SAFFRON》/Testing_is_believing/archive/2008/08/28/2845530.aspx11、《Test Automation Frameworks》/FRAMESDataDrivenTestAutomationFrameworks.htm12、《QTP关键字驱动框架- RelevantCodes[1]One》/Testing_is_believing/archive/2010/03/14/5378979.aspx13、《介绍一个QTP基础框架- SIFL》/Testing_is_believing/archive/2010/03/16/5384390.aspx文章1、《QTP10调试时查看变量显示空白- 补丁QTP_00591》/Testing_is_believing/archive/2010/02/28/5333934.aspx2、《HP发布QTP的新补丁支持FireFox3.5》/Testing_is_believing/archive/2010/01/10/5170279.aspx3、《QTP10的Reporter对象》/Testing_is_believing/archive/2010/01/02/5121064.aspx4、《QTP10的Tips.txt文件》/Testing_is_believing/archive/2009/12/13/4996879.aspx5、《HP发布了针对QTP 10的Web2.0 Feature Pack》/Testing_is_believing/archive/2009/11/22/4851752.aspx6、《QTP的智能识别(Smart Identification)过程》/Testing_is_believing/archive/2010/02/01/5277890.aspx7、《如何让你的QTP脚本执行效率更高》/Testing_is_believing/archive/2009/12/19/5040174.aspx8、《用户体验测试的自动化实现》/Testing_is_believing/archive/2008/05/27/2488303.aspx9、《使用QTP进行非GUI的自动化测试》/Testing_is_believing/archive/2010/03/14/5379213.aspx10、《QTP调用外部应用程序的4种方法》/Testing_is_believing/archive/2010/03/18/5394213.aspx11、stickyminds网站上关于QTP和自动化测试的一些文章:/sitewide.asp?function=search&kind=simplesite&tt=SRCHBOX&tth=Y&freetext=QTP12、QTP不需要Browser对象也能访问页面元素:/browser-not-required/13、如何让QTP支持TN3270 Plus终端模拟器:.au/tech-tips/qtp-with-terminal-emulators/14、AutoItx3与QTP/Christian/entry/autoitx3_and_qtp_part_1/Christian/entry/autoitx3_and_qtp_part_215、在QTP中如何把指定窗口置前:/Christian/entry/bringing_windows_to_the_front/Christian/entry/bringing_windows_to_the_front1QTP相关工具、插件:1、Power Debuger/Testing_is_believing/archive/2010/04/19/5504266.aspx2、Adobe为QTP提供的Flex4插件/Testing_is_believing/category/357781.aspx?PageNumber=23、My System/Uploads/My%20System/My%20System%20Auation%20Center%201.3.5.zip4、syncfusion控件的QTP插件::91/products/windows/addons/qtp/default.aspx5、infragistics控件的QTP插件扩展支持包:/dotnet/testadvantage/ta-qtp.aspx#Overview6、HP 的一些合作伙伴把QTP 的自动化测试能力延伸到移动应用程序领域,例如Jamo 、DeviceAnywhereJamo :/documents/meuxqtp.htmlDeviceAnywhere :/mobile-application-testing-smartphones.html7、测试Android的QTP插件- SeeTest/download//support/tutorial/how-to/set-up-new-project/connect-an-external-device-e-g-android//knowledge-base/articles/environment-techniques-id15/mobile-id777/test-android-with-qtp/QTP 学习视频汇总为了自己查看比较方便,对BOOBOOKE内所有的QTP视频做个汇总贴. ====================================================================== ==========[V] QTP 9的新特性1 - 英文视频/v/bbk1050是QTP 9软件中自带的视频讲座,英语讲座[V] QTP 9的新特性2 - 英文视频/v/bbk1051QTP 9软件中自带的视频讲座,英语发音[V] QTP 9的新特性3 - 英文视频/v/bbk1052QTP 9软件自带的视频讲座,英语发音,希望大家喜欢。

Qt期末考试重点知识总结

Qt期末考试重点知识总结

Qt期末考试重点知识总结第⼀章 hello,Qt#include2 #include3 int main(int argc, char *argv[])4 {5 QApplication app(argc, argv);6 QLabel *label = newQLabel("Hello Qt!");7 label->show();8 return app.exec(); }第⼆章创建对话框1:emit为发射信号;2:当将⼦布局对象添加到⽗布局对象中去,⼦布局对象就会⾃动重定义⾃⼰的⽗对象。

即将主布局装到对话框中时,它就会成为对话框的⼦对象,于是它的所有⼦窗⼝部件就会重定义⾃⼰的⽗对象,从⽽变成对话中的⼦对象;注:Qt会在删除⽗对象的时候⾃动删除其所属的所有⼦对象;3:信号和槽信号和槽机制是Qt编程的基础。

它可以让应⽤程序编程⼈员把这些互不了解的对象绑定在⼀起。

槽与普通的C++函数⼏乎是⼀样的,可以是虚函数;可以被重载;可以是公有的。

保护的或私有的,也可以被其他C++函数直接调⽤;并且,它们的函数可以是任意类型。

槽与普通的C++函数的区别:槽可以与信号连接在⼀起,(信号和槽函数必须有着相同的参数类型,这样信号和槽函数才能成功连接),在这种情况下,每当发射这个信号的时候,就会⾃动调⽤这个槽。

Connect()语句如下:Connect(sender,SIGNAL(signal),receiver,SL OT(slot));sender和receiver是QObject对象指针,signal和slot是不带参数的函数原型。

SIGNALE()和SLOT()宏的作⽤是把他们转换成字符串。

如setupUi()函数建⽴下述连接:Connect(lineEdit,SIGNAL(testChanged(constQString&)),this,SLOT(on_lineEdit_testChang ed()))信号和槽连接的可能性有以下⼏种情况:1)⼀个信号可以连接多个槽;2)多个信号可以连接⼀个槽;3)⼀个信号可以与另外⼀个信号相连接;4)连接可以被删除;第三章创建主窗⼝1:创建菜单和⼯具栏的步骤:1)创建并且设置动作;2)创建菜单并且把动作添加到菜单上;3)创建⼯具栏并且把动作添加到⼯具栏上;注:⼀个动作就是⼀个可以添加到任意数量的菜单和⼯具栏上的项。

QUINDOS笔记

QUINDOS笔记

QUINDOSAUTZER归零CNCINI建新程序 F11(填参数)出现报告表头STOPCALSPH(校球形探针)PRB(0~999)探针名字 F11(填参数)直径 5参考针 Y(第一根针为参考针,以后校的所有探针都做为附加针。

)探针库位置探针杆弯曲程度 2维(0.20)Probe angle + x towards + y(AZI)旋转角逆时针为正Probe angle + y towards + z(ELV)负阳角水平方向向上为正,向下为负球顶点采一点LISPRB(检查)测面MEPLA测线MEAXI测点MEPNT测球MESPH测圆柱MECYL有两种CYL1采一素线,再采一截圆;CYL2默认采两截圆。

测圆锥MECON如:MEPLA F11(填参数)PLA(1)坐标系 CMMA$CSY 或REFR$CSY 机床坐标MODE (包括测量、计算、评价)EVALRATION(评价、计算)(NOM、NOC、NOE)= 不填默认三种格式全有,如填(NOE)就不评价,可任意组合,如(NOM、NOC)。

TO Delete NPT and EVA (DEL) = 以前打的探针是否删掉测量前定位按“CLP”,测量结束按“END”。

测量值显示三个方向矢量 IX、IY、IZ Y为区域重心“-”为删一行不要的评价项目;“+”为删一栏不要的评价项目;“Numlock+↑”不打印“Numlock+Enter”执行打印如:MECIR F11(填参数)(NAM)=CIR(1)=CMMA$CSY或REFR$CSY帮助如CIR+“/”圆测量提示生成元素生成线GENAXI起点( 0 0 0 )终点(100、100、100)(NPT)=生成几点(ZNL)=避障点(DIR)=ACSY$XDI(指A坐标系的X轴方向)测量线MEAXI 按ENTER,再按NUMLOCKENTER 执行生成圆GENCIR F11(填参数)圆的名称(NAM)=CIR坐标系名称(CSY)=ACSY测量平面([XY]、YZ、ZX)(PLA)=默认圆心的坐标 [0] (XCO)=100[0] (YCO)=100[0] (ZCO)=100圆的直径(DIA)=13点的数目 4(NPT)=(默认4点)在“z”方向上附加CLP (ZVL)=10(在高处设置避障点)内/外圆([I]、O、P、N)(INO)=(注:P指名义点的探测方向被产生成垂直于圆所在平面的平面方向;N指名义点的探测方向被产生成垂直于圆所在平面的平面方向)探针的直径(只对外圆才需要)(PDI)=5起始角度 [0](MIP)=(默认整个圆周)终止角度 [360](MIP)=(默认整个圆周)转台的位置(RTP)=(无)圆槽宽度(SLD)=(无)测量圆MECIR按ENTER,再按NUMLOCKENTER 执行生成面GENPLA F11(填参数)(NAM)=PLA(CSY)=ACSY(PDI)=方向(DIR)=从什么方向测过去生成圆柱GENCYL F11(填参数)(NAM)=CYL(1)(CSY)=ACSY(PLA)=在哪个平面生成截圆(XCO)=0(YCO)=0(ZCO)=0(DIA)=25(LEN)=100生成高度(NPT)=8(默认8点)(NPL)=2层(默认)(ZVL)=200(在高处设置避障点)生成完成后测量MEPLA PLA(1)按ENTER,再按NUMLOCK ENTER执行MECYL CYL(1)按ENTER,再按NUMLOCK ENTER执行生成球GENSPH F11(填参数)(NAM)=SPH(1)(CSY)=ACSY(XCO)=100(YCO)=100(ZCO)=100(DIA)=(直径)〔0〕(MIT)=(默认)〔90〕(MXP)=(默认)(NPL)=2层(默认)(ZVL)=(在高处设置避障点)(INO)=(内外球)〔0〕(MIP)=(默认整个圆)〔360〕(MXP)=2层(默认)(SLD)=圆槽“NUMLOCK+↓”退出QUINDOS扫描球MESPHBLDCSYSPHCSYMECIR (NAM)=SPH-CIR按“9”起始点 STASC SPEED 1SC DENS 4 每mm4点SC ACCU 0.1 扫描精度SC MODE VPL 默认起点和终点一致方向点 DIR终止点 STOSC_STOTY PNT停止元素是点型还是面型,通常是点型。

qt小知识点总结大全

qt小知识点总结大全

qt小知识点总结大全Qt是一个广泛应用于跨平台应用程序开发的C++框架。

它提供了一整套开发工具和库,使开发者可以方便地创建高效的图形用户界面(GUI)应用程序。

Qt不仅可以运行在Windows、Linux和macOS等主流操作系统上,还可以应用于嵌入式系统和移动设备上,如智能手机和平板电脑。

Qt框架包含了许多重要的知识点,本文将对一些重要的Qt知识点进行总结和梳理,希望能够对初学者和开发者有所帮助。

第一部分:Qt基础知识1.信号与槽Qt中的信号与槽是一种事件处理机制。

信号是一个发射的对象,当某个事件发生时会发射一个信号,而槽是一个接收信号的对象。

通过信号与槽的连接,可以实现对象之间的通信和协作。

2.Qt对象模型Qt中所有的类都继承自QObject类,它提供了信号槽机制、对象树等特性。

在Qt中,对象的生命周期和内存管理都是由Qt的对象模型来管理的。

3.Qt事件处理Qt的事件处理机制是基于事件分发的,当一个事件发生时,Qt会将该事件压入事件队列中。

然后事件循环(Event Loop)会从事件队列中取出事件,并调用相应的事件处理函数。

4.Qt的界面设计Qt提供了一套灵活且强大的界面设计工具,包括Qt Designer和Qt Quick。

开发者可以使用这些工具来设计和实现各种类型的用户界面。

第二部分:Qt常用模块1.Qt核心模块Qt核心模块包括了Qt的基本功能,如容器类、文件IO、线程、时间等。

这些类和函数为Qt应用程序提供了基本的支持。

2.Qt GUI模块Qt GUI模块提供了用于创建图形用户界面的组件和功能。

其中包括了窗口管理、绘图、事件处理、多媒体等功能。

3.Qt网络模块Qt网络模块提供了网络编程的支持,包括TCP/IP、UDP、HTTP等协议的支持,还包括了安全套接字和网络状态监控等功能。

4.Qt数据库模块Qt数据库模块提供了对关系型数据库的访问支持,包括了对MySQL、SQLite、PostgreSQL等数据库的支持。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

小强零基础学习软件测试系列视频教程之QTP学习笔记
第一讲部分目录
CodeSamplesPlus——示例代码
Help——帮助中心
Samples——示例程序
第二讲界面
快捷键:StepOver F10
StepIn F11
语法检查CTRL+F7
断点F9
Record F3
Stop F4
Run F5
打开对象库CTRL +R
Automation-Record and Run Settings 第二个,设置桌面双击图标打开
手动查看结果报告:Automation-Results
Item栏——右键——Copy Document to Clipboad_粘贴到记事本里
Data Table:用于输出或参数化
输出时普遍存在的问题:运行时输出的值会显示出来,记录在data table中,但是运行结束就不见了;可以在Automation-Results中查看
Global为全局;Active为局部。

Avtive Screen:可添加检查点;添加对象到对象库;进行step Generator
第三讲实例分析
App 3a/4a/4b
第四讲QTP学习指南
QTP:用于回归测试和测试同一软件新版本
1、按照QTP Toturial.pdf执行一遍。

学习VBScript脚本卸掉IE上网助手插件。

第五讲QTP基本录制与回放
操作前:Tools-Options-RestoreLayout
调试视图:View-DebugView
增加点击Help键InsertStep-Step-Step Generator
第六讲QTP的三种录制方式
A、Normal Recording 正常模式
优点:通过识别程序对象代替坐标
缺点:并不能保证所有的对象都能识别
B、Analog Recording
录制鼠标,键盘轨迹
Note:you can not edit analog recording steps within QTP
C、Low Level Recording
录制的所有对象都默认为Window或WinObject对象
Note: May not run correctly on all objects.
三种方式的选择:
1.当A做不到的时候,选择B、C
2.B、C需要的磁盘空间更大
3.可以先用A,中间再有B、C;或者先用B、C,再切换到A 第七讲QTP只增强help步骤
把help设置为一个单独的Action,可复用
但先导出,然后需要关联
导出Resources-ObjectRepository-File
关联Resoutces-Associate Repositories
设置可复用Action 点击Action,右击Action Properties
第八讲QTP之check point
标准检查点,图像等
在Active Screen中点击需check部分,右击
第九讲QTP之参数化
Data Table
Random Number
环境变量-File-Setting-Environment-User-defined
Data Driver -检测出可能需要参数化的点
-Tools-DataDriver
第十讲QTP之Tools介绍
PasswordEncoder:密码转换器
Test Batch Runner:批处理测试:可同时添加多个test跑
Silent Test Runner:用于测试QTP脚本是否可以在LOADRUNNER下跑。

在测试之前一定要先关闭QTP
Quick Test Script Editor:脚本编辑器
Tests Results DeletionTool :删除测试报告
Action ConversionTool Action转换器
Mercury micro player:播放器
第十三讲VBS脚本介绍
VBScript 只有一种数据类型Variant
声明变量:Dim/Public/private:省名多个变量时,用逗号隔开
在过程中声明,则称该变量为过程级变量
若在过程外声明,则可被SCRIPT所有过程使用,成为SCRIPT级变量
存活期:变量存在的时期
包含一个值的变量:标量
包含一系列值的变量:数组变量Dim A(10)大小为11
常量:Const Const Myage = 49
Const St = “49”
Const CutoDate =#6-1-9# 定义时间和日期
字符串连接&
循环语句:Do...Loop:当条件为true时循环
While...wend:当条件为true时循环
For...Next:指定循环次数
For Each...Next:对于集合中的每项或数组中的每个元素,重复执行一组语句
过程:Sub-无返回值
Function-有返回值
第十四讲Recovery Scenarios 场景恢复
对于可以预见的错误,用if处理
对于不可预见的错误,用Recovery Scenarios处理
第十五讲QTP只虚拟对象
虚拟对象:QTP不能识别的对象,将其所在区域定义为虚拟对象
对于那些类似标准对象,但QTP不能识别的对象,也可以定义为虚拟对象,映射到某类标准对象。

创建虚拟对象:
Tools-VirtualObjects-New Virtual Objects.Mark 图像的时候不要标记太小。

【将图片定义为button】
第十六讲QTP之专家视图测试脚本开发
编辑脚本的方法:
1、输入测试对象的顶层对象的控件类型名
2、输入一个测试对象后,就可以访问其下属的属性方法,对象。

3、完成测试对象的选择后,输入“.”,选择操作
Utility对象
使用Extern对象加载DLL,调用丰富的windows API
Reproter 对象
可用于发送信息到测试结果文件;使用该对象的ReproterEvent方法向测试记过写入。

Environment 对象的使用
Built-in:内建-只读
User-defined:用户定义-配置和读取
通常访问QTP系统数据,或希望存储数据时使用
Msgbox和Print区别:
Print中的信息窗口是“非模式”的;
Msgbox中的信息窗口是“模式”的,会暂停脚本的运行。

第十七讲QTP描述性编程入门
能够摆脱对象哭的限制,编写出更为复杂、适应能力更强的脚本。

何时使用:在测试过程中,有些界面元素是动态出现或动态变化的,在录制的时候并没有添加到对象库中。

运行原理:QTP会使用测试脚本中给出的对象描述来查找对象,查找的赛为智能不是对象库,而是与测试程序运行时QTP为其创建的临时对象版本进行匹配。

使用方法:
1.直接描述方法TestObject(“PropertyName1:=PropertyValue1”,”...”)
2.使用Description对象方法
演示代码:Set myDesc = Description.Creat()
myDes(“attached text”).Value=“Agent Name:”是腰带冒号的
Dialog(“Login”).WinEdit(MeDesc).Set”mercury”
特点:如果在测试对象层次结构的某一点开始使用了描述性变成,则该测试对象层次结构下的后续测试对象都要使用描述性变成的方式来描述对象。

(后续强迫性)
第十八讲QTP测试脚本编写规范
代码编写规范
对象、变量、函数命名规范
注释规范
代码行缩进规范(Table)
常量命名规范
常量的命名应使用con作为前缀,驼峰命名。

conMyValue
变量命名规范
使用变量类型缩写作为前缀:blnFound、dblMoney
对象命名规范
用空间的梭子额或前缀加以标识。

如check box chkReadOnly
Image imglcon
Textbox txtLastName
代码注释规范
细节描述到代码行注释里
传入的参数应该被描述清楚其意图,范围等。

返回值、引用参数、在函数或过程中改变的变量都应该有相应的简单的描述。

函数或过程的头注释:目的,假设,影响,输入,返回值
每一个重要的变量都应该包括注释。

对象库管理
通过调整对象库的层次关系,给对象进行新的命名,都可以有效提高测试脚本的可读性。

第十九讲How to build automation framework
第二十讲QTPQ之焦点
焦点:默认的focuse
利用Tab键检查焦点
这个焦点的脚本实在是太难了。

根本看不懂。

第二十一讲手动测试VS自动化测试
手工测试为什么不可替代:人具有判断能力,工具相对机械,缺乏思维
手工测试不可替代的表现:测试用例设计,需要测试人员有经验和对错误的猜测能力;界面测试;用户体验测试;正确性的检查
什么时候使用自动化测试:可重复的,对于数据能大批量的精准比较;回归测试;机械化的执行和比较中使用。

不宜使用自动化测试的情况:周期短并且一次性项目;进度非常紧张的项目;需求非常不稳定的项目;界面尚未确定;使用了很多第三方或自定义控件的项目。

第二十一讲基础知识讲解完结篇。

相关文档
最新文档