1、第五部分 软件自动化测试概述1.自动测试的概念2.自动测试生成周期方法学( ATLM)3.ATLM在软件测试领域中的作用4.自动化测试工具介绍5.测试计划、设计与准备6.软件系统的主要测试内容、技术与测试用例模板7.测试的执行8.改错第五部分 软件自动化测试概述 开发应用程序的软件经理和软件开发人员面临着进度不断缩短,使用的资源最小的挑战; 作为少投入多产出的努力,企业希望充分的测试软件,但要求尽可能地快和彻底。为实现这目标,于是转向了自动测试许多事情手工测试是难以完成的,如 1000个用户的容量测试。第五部分 软件自动化测试概述 自动测试能力的增长很大程度上起源于快速应用开发( RDA) 普
2、及的增长。 快速应用开发: 是一种软件开发方法学,其重点在于通过增量的方式提供常见的软件构件将开发进度缩短到最少。 RDA的目的: 保证用户尽早设计和开发每一个构件,以便于细化软件,从而确保它更准确地反映用户的需求。第五部分 软件自动化测试概述 可知:在这个贯穿每一个软件构件始终,软件频繁变化和增加的环境里,软件需求被迫改变,软件测试呈现出本质上的重复。经过相当数量的新测试以及现有测试脚本的返工,完成每一个新构件。假定软件应用程序要发生频繁的变化和改变,那么,自动软件测试就成为确保软件每一个构件准确、稳定的一个重要控制机制。结论:第五部分 软件自动化测试概述一、自动测试的概念1.1 自动测试的
3、一般定义:对各种测试活动进行管理,包括测试脚本的开发与执行,以便使用一种自动测试工具来验证测试需求。软件测试自动化主要集中在软件测试流程的管理自动化,和动态测试的自动化,如功能测试自动化和性能测试自动化方面,还有是少部分的静态测试,如代码审查,它们常常比较容易从开发过程剥离出来。 第五部分 软件自动化测试概述一、自动测试的概念 相比于手工测试,测试自动化的优势是明显的。( 1)首先自动化测试可以提高测试效率,使测试人员更加专注于新的测试模块的建立和开发,从而提高测试覆盖率 ;( 2)其次,自动化测试使测试资产的管理数字化,并使测试资产得以在整个测试生命周期内得到复用,这个特点在功能测试和回归测
4、试中尤其具有意义 ;( 3)此外,通过测试流程的自动化管理使机构可以通过流程的关键绩效指标 (KPI, Key Performance Indicator)来衡量测试过程的有效性,从而实现了从软件质量保证向软件质量管理 (SQM, Software Quality Management)的进化。 1.2 自动测试的优点第五部分 软件自动化测试概述一、自动测试的概念1.3 说明:( 1) RDA的一个主要目标是通过阐述早期构件开发中最有风险的部分以缩短整个开发进度,因而在初始RDA周期开始阶段以及贯穿每个子 RDA周期就开展测试活动;测试设计和开发是一项复杂的任务;测试小组没有参加软件规格说明书
5、的编制工作或没有一开始就开展测试工作时,会给项目带来风险。潜在的后果包括: 不完全的测试工作、不富裕的测试进度、未对测试进度作计划外的扩充 第五部分 软件自动化测试概述一、自动测试的概念( 2)大量的工作需要自动测试工具的支持引入自动测试工具可以用更有效、可重复的自动测试环境代替世俗的手工测试;自动测试工具始于捕捉和回放工具;目前,软件自动测试的能力应包括:测试图形用户界面、需求一致性、负载测试、代码覆盖、网络接口、网络通信、内存泄漏等。第五部分 软件自动化测试概述二、自动测试生成周期方法学( ATLM) 简介 自动测试生成周期方法学( ATLM) 是一个旨在确保自动测试成功实施的结构化方法学; 自动测试生成周期方法反映了现代化的快速应用开发工作的益处,在此过程中,在开发的早期就要求用户参加,并主动参与每一个软件构件的分析、设计、开发和测试工作。 采用自动测试生存周期方法以支持涉及自动测试工具的测试工作,自动测试生存周期方法学包括多级过程。第五部分 软件自动化测试概述二、自动测试生成周期方法学( ATLM) 简介 自动测试生成周期方法学包括了一个多阶段的过程,该方法有六个部分组成:自动测试决定测试工具获取自动测试引入过程测试计划、设计与开发测试执行与管理测试评审与评估