软件测试自动化课件.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《软件测试自动化课件.ppt》由会员分享,可在线阅读,更多相关《软件测试自动化课件.ppt(60页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、软件测试自动化第1页,此课件共60页哦8.1 软件测试自动化的意义软件测试自动化的意义1、软件测试与软件测试自动化、软件测试与软件测试自动化(1)软件测试)软件测试(2)软件测试自动化)软件测试自动化利用利用测试工具测试工具自动自动完成或完成或辅助辅助完成测完成测试任务。试任务。利用利用软件软件来测试软件。这里所用的软来测试软件。这里所用的软件主要是件主要是自动测试脚本自动测试脚本。第2页,此课件共60页哦8.1 软件测试自动化的意义软件测试自动化的意义2、手工测试、手工测试优势优势测试用例的设计测试用例的设计界面和用户体验测试界面和用户体验测试逻辑判断的正确性检查逻辑判断的正确性检查第3页,
2、此课件共60页哦8.1 软件测试自动化的意义软件测试自动化的意义2、手工测试、手工测试局限性局限性 通过手工测试无法做到覆盖所有代码路径通过手工测试无法做到覆盖所有代码路径;许多与时序、死锁、资源冲突、多线程等有关的错误通许多与时序、死锁、资源冲突、多线程等有关的错误通过手工测试很难捕捉到过手工测试很难捕捉到 在系统负载、性能测试时,需要模拟大量数据、或大量在系统负载、性能测试时,需要模拟大量数据、或大量并发用户等各种应用场合时,也很难通过手工测试来进行并发用户等各种应用场合时,也很难通过手工测试来进行 在进行系统可靠性时,需要模拟系统运行十年、几十年,在进行系统可靠性时,需要模拟系统运行十年
3、、几十年,以验证系统能否稳定运行,也是手工测试无法模拟的。以验证系统能否稳定运行,也是手工测试无法模拟的。如果有大量(几千)的测试用例,需要在短时间内完成,手工如果有大量(几千)的测试用例,需要在短时间内完成,手工测试又怎么办呢?测试又怎么办呢?测试可以发现错误,并不能表明程序的正确性。测试可以发现错误,并不能表明程序的正确性。第4页,此课件共60页哦8.1 软件测试自动化的意义软件测试自动化的意义3、软件测试自动化的优势、软件测试自动化的优势(1)自动运行的速度快。)自动运行的速度快。(2)测试结果准确。)测试结果准确。(3)高复用性。)高复用性。(4)永不疲劳)永不疲劳(5)可靠)可靠(6
4、)独特的能力)独特的能力 第5页,此课件共60页哦8.1 软件测试自动化的意义软件测试自动化的意义4、软件测试自动化带来的好处、软件测试自动化带来的好处(1)对程序的新版本回归测试时,开销小。)对程序的新版本回归测试时,开销小。(2)可以在较少的时间内运行更多的测试。)可以在较少的时间内运行更多的测试。(3)可执行一些手工测试困难或不可能做的测试。)可执行一些手工测试困难或不可能做的测试。(4)代替人完成重复性工作,更好地利用人力资源。)代替人完成重复性工作,更好地利用人力资源。(5)测试具有一致性和重复性。)测试具有一致性和重复性。(6)缩短了测试时间,使产品更快推向市场。)缩短了测试时间,
5、使产品更快推向市场。(7)好的测试软件可以增加软件信任度。)好的测试软件可以增加软件信任度。第6页,此课件共60页哦8.1 软件测试自动化的意义软件测试自动化的意义5、软件测试自动化的局限性、软件测试自动化的局限性(1)不能取代手工测试。)不能取代手工测试。(2)手工测试比自动测试发现的错误更多。)手工测试比自动测试发现的错误更多。(3)自动测试脚本可能包含错误。)自动测试脚本可能包含错误。(4)测试自动化可能会制约软件开发。)测试自动化可能会制约软件开发。第7页,此课件共60页哦8.1 软件测试自动化的意义软件测试自动化的意义6、对软件测试自动化的误解、对软件测试自动化的误解(1 1)希望将
6、所有测试活动自动化。)希望将所有测试活动自动化。(2 2)购买一个测试工具,满足所有自动化测试需求。)购买一个测试工具,满足所有自动化测试需求。(3 3)马上减轻测试工作负担。)马上减轻测试工作负担。(4 4)在缩短进度上立竿见影。)在缩短进度上立竿见影。(5 5)期望自动产生测试计划。)期望自动产生测试计划。(6 6)达到)达到100%100%的测试覆盖率。的测试覆盖率。第8页,此课件共60页哦8.2 测试自动化的原理和方法测试自动化的原理和方法1、测试自动化的原理、测试自动化的原理 软件测试自动化实现的基础是软件测试自动化实现的基础是通过设计通过设计的特殊程序模拟测试人员对计算机的操作过的
7、特殊程序模拟测试人员对计算机的操作过程、操作行为程、操作行为,或者,或者类似于编译系统类似于编译系统那样对那样对程序进行静态检查。程序进行静态检查。第9页,此课件共60页哦8.2 测试自动化的原理和方法测试自动化的原理和方法2、测试自动化实现的方法、测试自动化实现的方法1 1)直接对代码进行静态和动态分析)直接对代码进行静态和动态分析2 2)测试过程的捕获和回放(录制)测试过程的捕获和回放(录制回放)回放)3 3)脚本技术)脚本技术4 4)自动比较)自动比较 第10页,此课件共60页哦1)代码分析)代码分析 代码分析类似于高级语言编译系统,一般针代码分析类似于高级语言编译系统,一般针对不同的高
8、级语言去构造分析工具,在工具中定对不同的高级语言去构造分析工具,在工具中定义类、对象、函数、变量等定义规则、语法规则;义类、对象、函数、变量等定义规则、语法规则;在分析时对代码进行语法扫描,找出不符合编码在分析时对代码进行语法扫描,找出不符合编码规范的地方;根据某种质量模型评价代码质量,规范的地方;根据某种质量模型评价代码质量,生成系统的调用关系图等。生成系统的调用关系图等。第11页,此课件共60页哦2)捕获和回放)捕获和回放 捕获和回放捕获和回放是一种是一种黑盒测试黑盒测试的自动化方法。的自动化方法。捕获捕获是将用户每一步操作都记录下来。这种记录的方式是将用户每一步操作都记录下来。这种记录的
9、方式有两种:程序用户界面的像素坐标或程序显示对象(窗口、有两种:程序用户界面的像素坐标或程序显示对象(窗口、按钮、滚动条等)的位置,以及相对应的操作、状态变化或按钮、滚动条等)的位置,以及相对应的操作、状态变化或是属性变化。所有的记录转换为一种脚本语言所描述的过程,是属性变化。所有的记录转换为一种脚本语言所描述的过程,以模拟用户的操作。以模拟用户的操作。回放回放时,将脚本语言所描述的过程转换为屏幕上的操作,时,将脚本语言所描述的过程转换为屏幕上的操作,然后将被测系统的输出记录下来同预先给定的标准结果比较。然后将被测系统的输出记录下来同预先给定的标准结果比较。第12页,此课件共60页哦3)脚本技
10、术)脚本技术 脚本是一种特殊的计算机脚本是一种特殊的计算机程序程序。包括:数据。包括:数据和指令。和指令。(2)脚本的产生)脚本的产生(1)什么是脚本?)什么是脚本?直接用脚本语言编写直接用脚本语言编写通过录制测试的操作产生通过录制测试的操作产生第13页,此课件共60页哦3)脚本技术(续)脚本技术(续)(3)自动化功能测试脚本的开发方式)自动化功能测试脚本的开发方式录制手工执行的测试用例得到的脚本。录制手工执行的测试用例得到的脚本。类似结构化程序设计,有各种逻辑结构。类似结构化程序设计,有各种逻辑结构。把代表应用程序行为的脚本在其他脚本之把代表应用程序行为的脚本在其他脚本之间共享。间共享。n线
11、性脚本线性脚本n结构化脚本结构化脚本n共享脚本共享脚本第14页,此课件共60页哦3)脚本技术(续)脚本技术(续)(3)自动化功能测试脚本的开发方式)自动化功能测试脚本的开发方式把检查点和执行操作的控制都维护在把检查点和执行操作的控制都维护在外部数据文件中。外部数据文件中。把测试数据从脚本中分离出去,存储在把测试数据从脚本中分离出去,存储在外部文件中。外部文件中。n数据驱动脚本数据驱动脚本n关键字驱动脚本关键字驱动脚本第15页,此课件共60页哦 线性脚本第16页,此课件共60页哦结构化脚本第17页,此课件共60页哦数据驱动脚本第18页,此课件共60页哦3)脚本技术(续)脚本技术(续)(4)测试脚
12、本的开发流程)测试脚本的开发流程 P238第19页,此课件共60页哦3)脚本技术(续)脚本技术(续)(5)测试脚本应具备以下特性:)测试脚本应具备以下特性:结构化结构化可读性可读性复用性复用性可维护性可维护性第20页,此课件共60页哦4)自动比较的类型)自动比较的类型(1)静态比较和动态比较)静态比较和动态比较(3)敏感性比较和健壮性比较)敏感性比较和健壮性比较(2)简单比较和复杂比较)简单比较和复杂比较(4)比较过滤器)比较过滤器第21页,此课件共60页哦8.3 自动化测试的引入和应用自动化测试的引入和应用1、引入软件测试自动化的策略、引入软件测试自动化的策略(1)从组织的需要出发考虑投资自
13、动化测试工具。)从组织的需要出发考虑投资自动化测试工具。(2)在项目的预算和时间约束条件下)在项目的预算和时间约束条件下(3)确定项目中适合自动化执行的测试任务。)确定项目中适合自动化执行的测试任务。(4)确定购买或自主开发)确定购买或自主开发(5)通过小范围试用确定是否需要工具)通过小范围试用确定是否需要工具第22页,此课件共60页哦8.3 自动化测试的引入和应用自动化测试的引入和应用2、适合自动化执行的任务、适合自动化执行的任务 单元测试、集成测试、系统负载测试、性能测试、稳单元测试、集成测试、系统负载测试、性能测试、稳单元测试、集成测试、系统负载测试、性能测试、稳单元测试、集成测试、系统
14、负载测试、性能测试、稳定性测试、可靠性测试等比较适合采用自动化测试。定性测试、可靠性测试等比较适合采用自动化测试。定性测试、可靠性测试等比较适合采用自动化测试。定性测试、可靠性测试等比较适合采用自动化测试。自动化测试工具在进行功能测试时,其准确的含义是自动化测试工具在进行功能测试时,其准确的含义是自动化测试工具在进行功能测试时,其准确的含义是自动化测试工具在进行功能测试时,其准确的含义是回归测试工具,这时工具不能发现更多的新问题,但回归测试工具,这时工具不能发现更多的新问题,但回归测试工具,这时工具不能发现更多的新问题,但回归测试工具,这时工具不能发现更多的新问题,但可以保证对已经测试过部分的
15、准确性和客观性。可以保证对已经测试过部分的准确性和客观性。可以保证对已经测试过部分的准确性和客观性。可以保证对已经测试过部分的准确性和客观性。第23页,此课件共60页哦8.4 软件测试工具的分类软件测试工具的分类1、按照、按照测试方法测试方法分为:分为:(1)白盒测试工具)白盒测试工具(2)黑盒测试工具)黑盒测试工具2、按照、按照测试的对象和目的测试的对象和目的,可以分为:,可以分为:单元单元测试工具、测试工具、功能功能测试工具、测试工具、负载负载测试工具、测试工具、性能性能测试工具、测试工具、Web测试测试工具、工具、数据库测试数据库测试工具、工具、回归回归测试工具、测试工具、嵌入式嵌入式测
16、试工具、测试工具、页面链接页面链接测试工具、测试工具、测试设计与开发测试设计与开发工具、工具、测试执行和评估测试执行和评估工具、工具、测试管理测试管理工具等。工具等。第24页,此课件共60页哦8.4 软件测试工具的分类软件测试工具的分类3、按照、按照测试工具的收费方式测试工具的收费方式分为:分为:(1)商业测试工具)商业测试工具(2)开源测试工具)开源测试工具(3)免费测试工具)免费测试工具(4)自主开发测试工具)自主开发测试工具第25页,此课件共60页哦8.5 如何选择测试工具如何选择测试工具 测试人员在选择和使用自动化测试工具时,测试人员在选择和使用自动化测试工具时,可可以从以下角度来考虑
17、:以从以下角度来考虑:按照用途选择匹配的测试工具按照用途选择匹配的测试工具在适当的生命周期选择测试工具在适当的生命周期选择测试工具按照测试人员的实际技能选择匹配的测试工具按照测试人员的实际技能选择匹配的测试工具第26页,此课件共60页哦8.6 目前市场上主流的测试工具目前市场上主流的测试工具 目前市场上专业开发软件测试工具的公目前市场上专业开发软件测试工具的公司有很多,比如司有很多,比如MI公司和公司和Rational公司。公司。1、MI公司的产品公司的产品 (1)LoadRunner (2)WinRunner (3)TestDirector (4)QTP(quick test Profess
18、ional)第27页,此课件共60页哦2、IBM Rational 公司的产品公司的产品 (1)Rational Testmanager (2)Rational ClearQuest (3)Rational Robot (4)Rational Purify3、Telelogic公司产品公司产品 最有名的最有名的logiscope白盒测试工具白盒测试工具4、Parasoft公司产品公司产品 JTest白盒测试工具白盒测试工具 C+Test白盒测试工具白盒测试工具第28页,此课件共60页哦8.7 QTP工具介绍工具介绍 QTP的全称是的全称是Quick Test Professional,是是MI
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 自动化 课件
![提示](https://www.deliwenku.com/images/bang_tan.gif)
限制150内