自动化测试概述课程目标:了解软件行业的发展情况了解自动化测试实施的必要性熟记常见的自动化测试工具内容提要:第一节:自动化测试的必要性测试投入:一般项目:项目总投入的30%~40%高可靠性和高安全性项目:项目其它投入的3~5倍软件测试现状分析自动化测试自动化测试是一门技术,它可以简化手工完成测试任务自动化程序与测试质量是独立的无论自动化测试还是手动测试都不影响测试的有效性和可仿效性自动测试只对测试的经济性和修改性有影响实现高效的自动测试,必须选择好的测试软件自动化测试的优点进行回归测试速度快,效率高可以执行一些手工测试困难或不可能做的测试更好地利用资源测试具有一致性和可重复性测试的复用性可以更快地将软件推向市场增加软件信任度软件开发过程–一遍一遍一遍(软件开发是一个不断重复的过程)自动化测试与其它测试的对比没有测试的后果:软件不可用手工测试:消耗大量时间不可靠消耗大量人力不一致性自动化测试:速度可重复性可编程性覆盖度可靠性可重用性测试自动化的发展阶段自动化测试工具生产厂商自动化测试工具:RUP面向开发的单元测试工具根据不同的语言进行分类:C/C++单元级测试工具PanoramaC++,C++Test,NumegaJUnit是一个开发源代码的Java测试框架根据工具的功能特点进行分类:内在资源泄漏检查工具:Numega中的BounceChecker,Rational的Purify等代码覆盖率检查工具:Numega的TrueCoverage,Rational的PureCoverage,TeleLogin公司的Logiscope代码性能检查工具:Logiscope和Macabe等软件纠错工具RationalPurl等负载和性能测试工具GUI功能测试工具将操作应用程序的各种动作和输入记录下来,包括键盘操作、鼠标点击等捕捉[Record]下来,生成一个脚本文件,这个脚本以后可以被“回放(playback)”。在实际测试过程中,要根据测试需求对录制的脚本进行一些必要的修改或加入一些参数,如选择不同的测试数据、脚本中插入检查点(CheckPoint)进行跟踪调试等。基于GUI功能测试工具主要适合回归测试阶段。当一个应用开发基本完成后,程序界面基本定型,虽然业务的需求会很频繁变化,但测试脚本结构基本不需要改动,只需要做些小调整,就可以自动运行,则可大大提高了测试的效率和测试的准确性。目前主要产品有MI公司的WinRunner,QTP,Compuware的QARun,Rational的SQARobot,MSVisualTestSuite基于Web应用的测试工具基于Web应用的测试工具主要进行链接检查、HTML检查、Web功能和Web站点安全性等各个方面的测试主要Web测试工具有MI公司的Astra系列(如AstraQuickTest)、RSW公司的E-TestSuite等Web系统测试工具:WorkBench、WebApplicationStressTool(WAS)、页面链接测试LinkSleuth等第二节:自动化测试解决方案Rational产品的整体解决方案Rational测试产品结构Rational全套测试解决方案的特点TestManager:集中、可伸缩的测试管理平台Robot:传统应用自动化测试工具RobotJ:Web/Java自动测试工具ClearQuest:缺陷跟踪工具Rational系统测试方案TestManager:控制中心TestManager和ClearQuest集成RobotGUI的自动功能测试基于Robot的自动化功能测试框架RobotJ:测试Java和Web应用ScriptAssure:降低测试脚本维护成本动态数据验证:可伸缩的测试脚本业界标准的IDE和测试脚本语言MI产品的整体解决方案MI产品结构MI三个重量级产品的介绍MercuryQualityCenterQuickTestProfessionalLoadRunnerMI产品结构MercuryQualityCenterQuickTestProfessionalLoadRunner的解决方案LoadRunner工作流程第三节:企业自动化测试解决方案企业自动化测试企业级的自动化测试实验室企业测试自动化架构自动化测试控制平台自动化测试技术平台使用TD+QTP管理测试脚本自动化测试实施自动化测试框架测试自动化实现自动化团队开发模型软件测试从业人员期望79%的软件测试从业人员希望提高自己的自动化测试技能,其次希望提高性能测试和测试管理技能,其比例为58%和57%自动化测试人员的从业要求课程回顾为什么需要自动化测试自动化测试的实施必要性知名企业的自动化解决方案自动化测试工具的介绍企业自动化测试解决方案作业复习课堂讲述的内容查找相关的自动化测试资料了解行业内的自动化解决方案和思想思考自身的职业发展和定位