第1章 软件测试概论01
- 格式:ppt
- 大小:649.00 KB
- 文档页数:35
软件测试概论第一章绪论1.1 软件生存期同其它任何事物一样,计算机软件从它的发生、发展到达成熟阶段,以至老化和衰亡,是一个历史发展的过程,这个过程称为软件的生存期(Life Cycle),包括下列六个步骤:(1)计划(Planning):确定软件开发的总目标;给出软件的功能、性能、可靠性以及接口等方面的设想;研究完成该软件任务的可行性,探讨问题解决的方案;对可供开发使用的资源(软件、硬件、人力)、成本、可取得的效益和开发的进度等做出估计;制定完成开发任务的实施计划。
(2)需求分析(Requirement Analysis):由软件人员和用户共同对待开发的软件进行详细的定义和确切的描述,其结果是给出软件需求说明书(SRS:Software Requirement Specification)。
(3)设计(Designing):软件的设计分为两部分。
一是概要设计(Preliminary Design),是指根据软件的需求说明书,软件设计人员应把需求说明书中各项需求转化为相应的体系结构,在结构中的每一组成部分是功能明确的模块,每个模块都能体现相应的需求。
二是详细设计(Detail Design),是指对概要设计中给出的各个模块所要完成的工作进行具体的描述,为后来的编程打下基础。
软件设计的结果是给出设计说明书。
(4)编码(Coding):利用某种计算机语言,把设计说明书中规定的内容转化为计算机可以接受的程序的过程称为编码。
编码应以设计相一致,且结构清晰、易读、易修改。
(5)测试(Testing):根据软件的需求说明书、设计说明书和源代码,检验软件开发工作的成果是否符合要求的过程称为软件测试。
软件测试是发现软件错误、提高软件可靠性与保证软件质量的重要手段。
(6)运行与维护(Running and Maintaining):对已交付用户的软件投入正式使用后便进入运行阶段,这个阶段可能持续若干年。
在运行过程中,可能有多种原因需要对它进行修改,包括运行中发现了软件错误需要修正;为适应变化了的软硬件环境,而需要做相应的变更;为进一步增强软件的功能,或提高其性能,而使它进一步的完善和扩充等。
第1章 软件测试概述软件测试(Software Testing)是信息系统开发中不可缺少的一个重要步骤,随着软件变得日益复杂,软件测试也变得越来越重要。
软件的基础知识、软件测试的概念(方法、目标和任务)、软件测试的定义是软件测试的基础。
本章重点讨论以下内容:● 软件的相关知识概述 ;● 软件测试的相关知识概述 ;● 测试的目的和原则;● 软件测试的流程 ;● 软件测试人员的要求 ;● 软件测试的前景 。
1.1 软件的相关知识概述做任何事,应从概念入手,才能少走弯路,才能对此概念相关的问题有一个正确的理解分析,最终解决问题。
软件测试的对象就是软件,为了进行软件测试,我们应了解什么是软件?它的内容以及生命周期?1.1.1 软件的定义1. 软件是计算机系统中与硬件相互依存的一部分,它是包括程序、数据及其相关文档的完整集合。
其中,程序是按事先设计的功能和性能要求执行的指令序列;数据是使程序能正常操纵信息的数据结构;文档是与程序开发,维护和使用有关的图文材料。
软件具有8个特点:(1) 软件是一种逻辑实体,而不是具体的物理实体。
因而它具有抽象性。
(2) 软件的生产与硬件不同,它没有明显的制造过程。
对软件的质量控制,必须着重在软件开发方面下功夫。
(3) 在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题。
然而它存在退化问题,必须要对其进行多次的修改与维护。
(4) 软件的开发和运行常常受到计算机系统的制约,对计算机系统有着不同程度的依赖性。
为了解除这种依赖性,在软件开发中提出了软件移植的问题。
(5) 软件的开发至今尚未完全摆脱手工艺的开发方式。
(6) 软件本身是复杂的。
软件的复杂性可能来自它所反映的实际问题的复杂性,也可能来自程序逻辑结构的复杂性。
(7) 软件成本相当昂贵。
软件的研制工作需要投入大量的、复杂的、高强度的脑力劳动,它的成本是比较高的。
(8) 相当多的软件工作涉及到社会因素。
许多软件的开发和运行涉及机构、体制及管理方式等问题,它直接影响到项目的成败。