分享
分享赚钱 收藏 举报 版权申诉 / 28

类型自动化测试教程.ppt

  • 上传人:无敌
  • 文档编号:29287
  • 上传时间:2018-03-05
  • 格式:PPT
  • 页数:28
  • 大小:191.02KB
  • 配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    自动化测试教程.ppt
    资源描述:

    1、软件自动化测试教程,1.何为软件测试?,软件自动化测试,2.软件自动化测试?,3.自动化测试好处?,节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。,是把以人为驱动的测试行为转化为机器执行的一种过程。,软件测试就是在预设条件下运行系统或应用程序,评估运行结果,预先条件应包括正常条件和异常条件,实施自动化测试之前需要对软件开发过程进行分析,以观察其是否适合使用自动化测试。通常需要同时满足以下条件:,1) 软件需要变动不频繁。,2) 项目周期足够长。,3) 自动化测试脚本可重复使用。,通常适合于软件测试自动化的场合:,(1)回归测试,重复单一的数据录入或是击键等测试操作造成了不必

    2、要的时间浪费和人力浪费;,(2)此外测试人员对程序的理解和对设计文档的验证通常也要借助于测试自动化工具;,(3)采用自动化测试工具有利于测试报告文档的生成和版本的连贯性;,(4)自动化工具能够确定测试用例的覆盖路径,确定测试用例集对程序逻辑流程和控制流程的覆盖;,随着测试流程的不断规范以及软件测试技术的进一步细化,软件测试自动化已经日益成为一支不可忽视的力量。,Mercury Interactive的主要产品包括:TestDirector基于WEB集成的测试管理工具,组织和管理整个测试过程。WinRunner/XRunner企业功能测试工具,测试Windows 和X-Windows应用是否能正

    3、确地工作。QuickTest一个革命性的技术,能简化、加速测试。LoadRunner负载测试工作,预测系统的性能和表现。TestSuite Enterprise一整套的自动测试软件包,包括LoadRunner, Win/Runner,和TestDirector,成立于:1989年8月上市:1993年10月 美国NASDAQ业务领域:企业测试和性能管理解决方案公司总部: California全世界的办事机构:60+ 办事处分布于20个国家员工:1500+,Mercury Interactive公司及产品的简单介绍:,2006年被HP收购,QTP学习四个阶段,从无到有 - 初级篇 这个过程主要是熟

    4、悉QTP的界面设置,以及一些基本的用法,包括最基础的录制回放,低级录制,参数化,OUTPUT输出,验证点。总体来说这个阶段还是属于一个入门,比较容易能够接受,也是大多数测试人员能够达到的层次水平。 从有到懂 - 中级篇 这个过程中我们已经有了一些基础知识,这个时候我们不可以把自己再停留在录制回放了,而是需要在专家视图进行自行编写测试脚本,我们需要熟悉QTP的各种内置保留对象,需要熟悉QTP对象库的原理,描述性编程以及GETRO,GETTO,SETTO的用法,DATATABLE的方法应用,自定义REPORT,能够熟练的使用F7脚本生成器来编写脚本,随后我们需要对VBS有一定的了解,可以先学习一下

    5、VBS的一些基础知识,并能够熟练的运用它,,从懂到熟 - 高级篇 在这个过程中我们已经有能力可以熟练的在专家视图中进行编写脚本,以及可以使用简单的VBS对脚本进行修改以及优化,到了这一步我们就需要学习一些QTP的相对高级用法,熟悉com组件包括fso,wsh,eom,aom,ado中的一些方法属性学会使用DOM,DLL,DOTNETFACTORY,WIN32 API特殊情况处理,比如鼠标事件,WEBTABLE中WebCheck处理,有时可以通过借助自己写的小工具来解决异常情况处理,通过VBS判断来把异常情况包括进去,包括VBS中的错误处理,QTP中的场景恢复 从熟到精 - 精通篇 到了这个过程

    6、,其实已经可以说是一个半高手了,可以独立解决各种测试中碰到的难题,接下来可以尝试去读高手写的一些代码,比如REPORTMANAGER,saffron等,精通的话不是人人都可以达到的,这个过程还需要学会框架的设计,保留对象的扩展,插件的扩展开发,等等以及各方面的综合扩展能力,对于最新的一些技术也要实时了解,达到这个层次之后你已经可以说对QTP了如指掌了。,培训Q&A,泽林承诺,培训内容,联系我们,QTP的测试脚本语言采用的是VBScript,而QTP的专家视图其实就是一VBScript脚本编辑器,因此,测试人员可以利用简单易用而不失强大和灵活特性VBScript脚本语言来增强自动化测试。 什么是

    7、VBS? VBScript,简称VBS,是VB的一个安全子集。VBScript是脚本语言,它与其它脚本语言有很多共同的特点,例如变量无关、解释执行等。,VBScript 脚本,1基本键:一般来说,要发送的按键指令都可以直接用该按键字符本身来表示,例如要发送字母“x”,使用“WshShell.SendKeys x”即可。当然,也可直接发送多个按键指令,只需要将按键字符按顺序排列在一起即可,例如,要发送按键“cfan”,可以使用 WshShell.SendKeys cfan 2特殊功能键:对于需要与Shift、Ctrl、Alt三个控制键组合的按键,SendKeys使用特殊字符来表示:Shift +

    8、;Ctrl ;Alt % 3一般功能键:F1F12,方向键,回车键,等实现了一定功能的按键。 Wshshell.Sendkeys “enter” 4.组合键: 如要发送的组合按键是同时按下CtrlE,需要用“WshShell.SendKeys e”表示, 如果要发送的组合按键是按住Ctrl键的同时按下E与C两个键,这时应使用小括号把字母键括起来, 书写格式为 “WshShell.SendKeys (ec)”,这里要注意它与“WshShell.SendKeys ec”的区别, 后者表示组合按键是同时按住Ctrl和E键,然后松开Ctrl键,单独按下“C”字母键。 由于“+”、“”这些字符用来表示特

    9、殊的控制按键了,如何表示这些按键呢?只要用大括号括住这些 字符即可。例如,要发送加号“+”,可使用WshShell.SendKeys + 如果需要发送多个重复的单字母按键,不必重复输入该字母,SendKeys允许使用简化格式进行描述 ,使用格式为“按键 数字”。例如要发送10个字母“x”,则输入“WshShell.SendKeys x 10”即可。,第一个方法sendkeys,VBScript 常数与变量,VBScript 常数常数是具有一定含义的名称,用于代替数字或字符串,其值被创建后就不允许再被改变。VBScript 定义了许多内部常数。例如:MsgBox提示信息: & vbCrLf& 操

    10、作成功, vbInformation, Title创建常数使用Const语句在VBScript 中创建用户自定义常数。使用Const语句可以创建名称具有一定含义的字符串型或数值型常数,并给它们赋原义值。例如:Const conUserName= “songfunConst PI = 3.1415926535897Const conOlympicDate= #08/08/08#最好采用一个命名方案以区分常数和变量。这样可以避免在运行脚本时对常数重新赋值。例如,可以使用“vb”或“con”作常数名的前缀,或将常数名的所有字母大写。将常数和变量区分开可以在开发复杂的脚本时避免混乱。常用常数vbCr

    11、回车符vbLf换行符vbCrLf 回车符与换行符。vbNewLine新行字符VBS中,只有一种变量,叫变体变量。,VBScript 运算符,算术运算符 比较运算符 逻辑运算符 描述 符号 描述 符号 描述 符号 求幂 等于 = 逻辑非 Not 负号 - 不等于 逻辑与 And 乘 * 小于 整除 小于等于 =加 +减 - 字符串连接 &,VBS程序的输出函数,输出函数msgbox(“”)MsgBox(prompt, buttons, title)vbOKOnly 0 只显示“确定”按钮(缺省值) VbOKCancel 1 显示“确定”和“取消”按钮 VbAbortRetryIgnore 2 显

    12、示“终止”、“重试”和“忽略” 按钮 VbYesNoCancel 3 显示“是”、“否”和“取消”按钮 VbYesNo 4 显示“是”和“否”按钮 VbRetryCancel 5 显示“重试”和“取消”按钮 返回值 常数值 说明 vbOK 1 确定 vbCancel 2 取消 vbAbort 3 终止 vbRetry 4 重试 vbIgnore 5 忽略 vbYes 6 是 vbNo 7 否 实例演示:,VBS程序的输入函数,输出函数inputbox(“”)InputBox(prompt, title , default) Prompt 必需的。作为对话框消息出现的字符串表达式。prompt

    13、的最大长度大约是 1024 个字符,由所用字符的宽度决定。如果 prompt 包含多个行,则可在各行之间用回车符 (Chr(13)、换行符 (Chr(10) 或回车换行符的组合 (Chr(13) & Chr(10) 来分隔。 Default 可选的。显示文本框中的字符串表达式,在没有其它输入时作为缺省值。如果省略 default,则文本框为空。 实例演示:,VBScript条件语句,使用条件语句和循环语句可以控制脚本的流程。使用条件语句可以编写进行判断和重复操作的VBScript 代码。在VBScript 中可使用以下条件语句:If.Then.Else语句条件为True 时运行语句,例如:If

    14、 myDate Now Then myDate = Now 单行不需要加End If条件为True 和False 时分别运行某些语句。If 条件thenElseEnd if对多个条件进行判断Select Case语句Select Case iValueCase 1 MsgBox Hello World!Case 2 MsgBox Hello Software Testing!Case Else MsgBox Hello ZELINEnd Select,VBScript循环语句,循环用于重复执行一组语句。循环可分为三类:一类在条件变为False之前重复执行语句,一类在条件变为True之前重复执行

    15、语句,另一类按照指定的次数重复执行语句。在VBScript 中可使用下列循环语句:Do.Loop:当(或直到)条件为True时循环。While.Wend:当条件为True时循环。For.Next:指定循环次数,使用计数器重复运行语句。For Each.Next:对于集合中的每项或数组中的每个元素,重复执行一组语实例演示,VBScript中的With语句,对一个对象执行一系列的语句。语法:With objectstatementsEnd With例如:With MyLabel.Height = 2000.Width = 2000.Caption = 这是MyLabelEnd With当程序一旦进

    16、入With块,object 就不能改变。因此不能用一个With语句来设置多个不同的对象。With语句可以嵌套,VBScript 过程,在VBScript 中,过程被分为两类:Sub过程和Function过程。Sub 过程Sub过程是包含在Sub和End Sub语句之间的一组VBScript 语句,执行操作但不返回值。Sub过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果Sub过程无任何参数,则Sub语句必须包含空括号()。Function 过程Function 过程是包含在Function 和End Function 语句之间的一组VBScript 语句。Function 过程与S

    17、ub 过程类似,但是Function 过程可以返回值。Function 过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果Function 过程无任何参数,则Function 语句必须包含空括号()。Function 过程通过函数名返回一个值,这个值是在过程的语句中赋给函数名的。Function 返回值的数据类型总是Variant。,VBScript 过程,Sub语句sub1()msgbox(this is sub1)end subsub sub2()msgbox(this is sub2)end sub,dim a a=split(“a,b,c,d”,“,”) msgbox ubo

    18、und(a) a返回一个下标从0到ubound(a)的数组,数组元素共ubound(a)+1个 获取数组的最大下标:ubound(a) 获取数组的最小下标:lbound(a) 获取数组的元素个数:ubound(a)-lbound(a)+1,Split函数的使用,function fun1()msgbox(this is fun1)a=100fun1=aend functionfunction fun2(a,b)msgbox(this is fun2)fun2=a+bend functiona1=fun1()a2=fun2(3,4)msgbox(a1)msgbox(a2),set fso=cre

    19、ateobject(scripting.filesystemobject),set file=fso.opentextfile(a.txt,1,true),file.atendofstreamtrue,文件的读写1、打开文件:使用 opentextfile 方法如:set ts=fso.opentextfile(“c:kk.txt”,1,true)说明:第二个参数为访问模式1 为只读、2 写入、8 为追加第三个参数指定如文件不存在则创建。2、读取文件:read(x)读x 个字符;readline 读一行;readall 全部取如:set ffile=fso.opentextfile(“c:kk

    20、.txt”,1,true)value=ffile.read(20)line=ffile.readlinecontents=ffile.readall,使用dictionary 对象VBS 中存在一个特殊的对象dictionnary,是一个集合对象。一般情况霞,我把这个特殊的集合想象为数组,可以使用其中内建的函数完成存储和操纵数据等基本任务,无须担心数据是在哪些行列,而是使用唯一的键进行访问或者是一个只能运行在内存中的数据库,并只有两个字段分别是:key 和item,在使用中,字段key 是索引字段。set sdict=CreateObject(Scripting.Dictionary)sdic

    21、t.add a,applesdict.add b,bananasdict.add c,copyfor each key in sdict.keysmsgbox 键名 & key & 是 & = & sdict (key)nextsdict.removeall,VBS脚本修改注册表 Set OperationRegistry=CreateObject(“WScript.Shell”) 上述这些代码就创建了一个能与操作系统沟通的对象OperationRegistry 对象的方法有了以上这个对象,并不等于就能马上对注册表进行操作,我们还必须弄清该对象对注册表进行操作的几种重要方法.1.对注册表的读操

    22、作RegRead 2.对注册表的写操作RegWrite 3.对注册表的删操作RegDelete,VBScript的常用函数(1),字符串函数Len 函数Left 函数Mid 函数Right 函数InStr 函数InStrRev 函数LTrim、RTrim 和Trim 函数LCase 函数UCase 函数Replace 函数StrComp 函数Split 函数Join 函数,VBScript的常用函数(2),转换函数Asc函数Chr函数Str函数Val 函数CBool函数CByte函数CCur函数CDate函数CDbl函数CInt函数CLng函数CSng函数CStr函数,VBScript的常用函

    23、数(3),判断函数IsArray 函数IsDate 函数IsEmpty 函数IsNumeric 函数IsNull 函数IsObject 函数VarType 函数TypeName 函数,VBScript的常用函数(4),时间函数Date 函数Day 函数Hour 函数Minute 函数Month 函数Now 函数Second 函数Time 函数Weekday 函数WeekDayName 函数Year 函数,VBScript的常用函数(5),其他函数Rnd 函数和Randomize 语句公式:Int(upperbound -lowerbound + 1) * Rnd + lowerbound)Cr

    24、eateObject 函数Set myObj = CreateObject(WScript.Shell)Set myObj = CreateObject(Excel.Application)Set myObj = CreateObject(Scripting.FileSystemObject)Set myObj = CreateObject(Scripting.Dictionary)Set myObj = CreateObject(ADODB.Connection)Set myObj = CreateObject(ADODB.Recordset)Set myObj = CreateObject(Microsoft.XMLDOM)Set myObj = CreateObject(“InternetExplorer.Application”)GetObject 函数Int、Fix 函数LBound、Ubound 函数MsgBox、InputBox 函数,

    展开阅读全文
    提示  道客多多所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:自动化测试教程.ppt
    链接地址:https://www.docduoduo.com/p-29287.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    道客多多用户QQ群:832276834  微博官方号:道客多多官方   知乎号:道客多多

    Copyright© 2025 道客多多 docduoduo.com 网站版权所有世界地图

    经营许可证编号:粤ICP备2021046453号    营业执照商标

    1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png



    收起
    展开