版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第 7 章 软件测试自动化与软件测试工具,7.1 软件自动化测试基础 7.2 自动化测试的作用和优势 7.3 软件测试工具分类 7.4 几种常用软件测试工具,7.1 软件自动化测试基础,1软件自动化测试的产生 随着计算机日益广泛的应用,计算机软件越来越庞大和复杂,软件测试的工作量也越来越大。,随着人们对软件测试工作的重视,大量的软件测试自动化工具不断涌现出来,自动化测试能够满足软件公司想在最短的进度内充分测试其软件的需求,一些软件公司在这方面的投入,会对整个开发工作的质量、成本和周期带来非常明显的效果。,2软件自动化测试的概念 软件测试自动化就是通过测试工具或其他手段,按照测试工程师的预定计划
2、对软件产品进行自动的测试,它是软件测试的一个重要组成部分,能够完成许多手工无法完成或者难以实现的一些测试工作。正确、合理地实施自动化测试,能够快速、全面地对软件进行测试,从而提高软件质量、节省经费、缩短产品发布周期。,自动化测试能够替代大量手工测试工作,避免重复测试,同时,它还能够完成大量手工无法完成的测试工作,如并发用户测试、大数据量测试、长时间运行可靠性测试等。,7.2 自动化测试的作用和优势,使用测试工具的目的就是要提高软件测试的效率和软件测试的质量。 通常,自动化测试的好处有: 产生可靠的系统; 改进测试工作质量; 减少测试工作量并加快测试进度。,1产生可靠的系统 测试工作的主要目标一
3、是找出缺陷,从而减少应用中的错误;另一个是确保系统的性能满足用户的期望。为了有效地支持这些目标,在开发生存周期的需求定义阶段,当开发和细化需求时则应着手测试工作。,使用自动化测试可改进所有的测试领域,包括测试程序开发、测试执行,测试结果分析、故障状况和报告生成。它还支持所有的测试阶段,其中包括单元测试、集成测试、系统测试、验收测试与回归测试等。,通过使用自动化测试可获得的效果可归纳如下。 (1)需求定义的改进 (2)性能测试的改进 (3)负载/压力测试的改进 (4)高质量测量与测试最佳化 (5)改进与开发组人员之间的关系 (6)改进系统开发生存周期,2改进测试工作质量 通过使用自动化测试工具,
4、可增加测试的深度与广度,改进测试工作质量。其具体好处可归纳如下。,(1)改进多平台兼容性测试 (2)改进软件兼容性测试 (3)改进普通测试执行 (4)使测试集中于高级测试问题 (5)执行手工测试无法完成的测试 (6)重现软件缺陷的能力 (7)测试无需用户干预,3减少测试工作量并加快测试进度 善于使用测试工具来进行测试,其节省时间并加快测试工作进度是毋庸置疑的,这也是自动化测试的主要优点。,表7-1列出了采用手工和自动化测试方式完成各测试步骤所需工作量的基准对比结果。该测试涉及1750个测试程序和700个错误。表7-1中的数字反映出通过测试自动化,测试工作总量减少75%。,软件自动化测试是软件测
5、试技术的一个重要的组成部分,引入自动化测试可以提高软件质量,节省经费,缩短产品发布周期。 然而,测试工具本身的优势并不意味着使用测试工具就能成功,关键还是在于使用工具的人。很多刚拥有测试工具的人,经常过分夸大工具的功效,并投入太高的期望。,但是,工具只是提供了解决问题的一种手段而已。成功的测试自动化需有以下两个关键的因素。 一个被很好理解的并且稳定的应用行为 一个专注的、有着丰富技能的测试组,并且被分配了足够的时间和资源,7.3 软件测试工具分类,软件测试工具的种类不少,有些以用途来分类,有些以价位来分类,有些则以使用特性来分类。基本上,分类只是一种归纳的方式,这里按照测试工具的主要用途和应用
6、领域将测试软件做了一个整理归纳,将自动化测试工具分为以下几类:, 捕获错误用途; 一般用途; GUI自动化用途; 专项用途; 软件产品功能、性能测试用途; 测试管理工具; 测试辅助工具。,1捕获错误用途 顾名思义就是用于捕获软件错误或程序调试。 2一般用途 这里所说的一般用途,是指这个测试工具在进行测试时,可以适用于大部分的软件。,3GUI自动化用途 目前许多以测试用软件为主要产品的软件公司,大多提供这类的自动化测试软件。这类软件除了提供在窗口界面中使用外,也有不少是针对浏览器接口开发的自动化测试工具。,4专项用途 以专项用途为主的测试工具,就是某种专项测试的软件。 (1)专用代码测试工具 (
7、2)白盒测试工具 (3)网络测试工具,5软件产品功能、性能测试用途 这类测试工具通过自动录制、检测和回放用户的应用操作,将被测系统的输出记录同预先给定的标准结果进行比较。,6测试管理工具 测试管理工具用于对测试进行管理。 7测试辅助工具 这些工具本身并不执行测试,例如它们可以生成测试数据,为测试提供数据准备等。,7.4 几种常用软件测试工具,1QACenter QACenter自动化测试系列工具是Compuware公司的产品,它能够帮助测试人员创建快速、可重用的测试过程。这些测试工具可以帮助管理测试过程,快速分析和调试程序,包括针对回归、强度、单元、并发、集成、移植、容量、负载测试、自动执行测
8、试和产生测试结果文档。,QACenter主要包括 QARun、 QALoad、 QADirector、 EcoTools 和TESTBytes等模块。,2WinRunner WinRunner是Mercury Interactive公司提供的一个企业级的功能检测工具。WinRunner使功能测试得以自动化,从而保证了应用程序按照预定方式运行。它以测试脚本形式将业务的过程记录下来,并随着相应的应用程序的开发或更新来支持对脚本的改进。执行脚本及报告结果在整个的应用周期中可对脚本重复使用。,3LoadRunner LoadRunner是Mercury Interactive公司开发的一种预测系统行为
9、和性能的负载测试工具,它可以通过模拟成千上万个用户和实施实时监测来确认和查找问题。对于有实力的大公司而言,这款软件可能比较适合,它的功能和QALoad相比不相上下。通过使用LoadRunner,企业能够最大限度地缩短测试时间、优化性能和加速应用系统的发布周期。,LoadRunner是一种具有较高规模适应性的自动负载测试工具,它能预测系统行为,优化性能,强调的是整个企业的系统。通过模拟实际用户的操作行为和实行实时性能监测,来查找和确认存在的问题。,LoadRunner是一种具有较高规模适应性的自动负载测试工具,它能预测系统行为,优化性能,强调的是整个企业的系统。通过模拟实际用户的操作行为和实行实
10、时性能监测,来查找和确认存在的问题。,4GUI接口自动化测试工具 目前市场上有关GUI形式的自动化测试软件种类相当多,而且所支持的操作平台也越来越多。基本上GUI自动测试的原理就是以录制和播放(Record and Replay)为主要的操作方式。由于每一家开发公司所采用的开发技术不同,因此使用者所要学习的指令编写方式也大不相同。,虽然学习这些指令并不困难,但是要将这些测试软件的功能发挥好,就必须非常熟悉软件所提供的API及函数,所以如果要学会所有的GUI自动测试软件指令,也不是一件容易的事。由于GUI自动化测试软件有相当多的种类,在这里只介绍两种GUI自动化测试软件。它们分别是Rationa
11、l公司发行的Visual Test与Seapine公司发行的QA Wizard for Web版本。,(1)Visual Test 使用Visual Test并不困难,而且熟悉Microsoft Visual Studio的使用者会发现它与Visual Studio的使用界面几乎相同。 它使用类似Visual Basic的语言,编程进行起来简单直接,同时它也具备使用指针处理复杂数据结构的高级功能,这让用Visual Test更容易调用Windows API。,它使用类似Visual Basic的语言,编程进行起来简单直接,同时它也具备使用指针处理复杂数据结构的高级功能,这让用Visual Te
12、st更容易调用Windows API。,(2)QA Wizard QA Wizard是由Seapine软件公司开发的。 基本上QA Wizard也是一个录制和播放的自动化测试。,目前的版本只支持Microsoft的IE浏览器,而未来将推出支持Netscape浏览器的版本。 QA Wizard最大的好处是它已经不需要再去对所产生的Script进行修改,当然如果有必要的话,使用者也可以很容易地进行修改。在资料存储上它采用微软的Access MDB。,在使用QA Wizard录制使用者的操作行为时,在浏览器的上端会嵌入QA Wizard的功能栏,这个功能栏提供了Record、Run、Pause、St
13、op、Checkpoint及Properties 6种功能键。这6种功能可以让使用者自由地操作录制的过程。,5BoundsChecker BoundsChecker是用于Visual C+开发环境所开发的程序代码的一个很优秀的自动捕捉错误及调试工具。它最主要的功能是协助程序开发人员快速找出与内存及资源有关的错误,并且指出是哪一行程序代码所导致的。,6CodeReview CodeReview是针对 Visual Basic开发环境所开发的程序代码分析工具。这套工具可以检测出Visual Basic程序代码内可能出现错误的环节,一旦问题被捕捉出来,CodeReview会将出错的内容及导致出错的原因一一呈现给开发人员。,7SmartCheck SmartCheck也是针对Visual Basic开发环境的分析工具。 8JCheck JCheck是用来分析Java执行过程与事件的工具,它可实时监控程序执行的状态。JCheck的最大特点是能将Java语言的执行过程以图形化的方式表现出来。,9TrueTime TrueTime是分析程序执行性能的工具,它能够自动锁定延缓程序执行速度的程序代码,并
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高校图书馆赋能大学生信息素质教育:模式、挑战与突破
- 高校内部会计控制体系构建:问题、案例与优化策略
- 高时空分辨分幅成像技术:解锁ICF诊断的关键密码
- 高新技术产业园区概念性设计:理念、要素与实践探索
- 绩效考核不科学问题清单及整改措施
- 初级养老护理员考试题库及答案
- 街道环境保护管理制度
- 驾校学员安全培训制度
- 应急救援知识培训考试题及答案
- 2026控制专业就业面试题及答案
- 宁夏回族自治区2025年初中学业水平考试英语试题(含答案)
- 中考英语语法之时间状语从句课件
- 2026中国大宗商品物流园区期货交割库布局研究报告
- 2026年应急管理部消防考试试题及答案解析
- 2026国能销售集团有限公司西安分公司招聘(1人)笔试历年典型考点题库附带答案详解
- 口腔医务人员工作制度
- 成人拯救脓毒症指南(2026版)
- 文物安全保护责任制度
- 公司级安全教育培训考试卷(答案)
- 2026年安徽省合肥市重点学校小升初数学考试试题+解析
- 检验检测实验室质量管理体系手册
评论
0/150
提交评论