软件测试系列---软件测试基础

软件测试系列--软件测试基础

1、什么是软件测试?

**软件测试是一个过程,包含了若干活动,运行软件进行测试只是活动之一

**进行软件测试可以人工方式也可以借助于工具

**进行软件测试可以运行软件也可以不运行软件

**软件测试的目的不仅仅是为了发现错误

2、软件测试的目的?

软件测试的目的有三个,分别是:证明、检测、预防。

证明

(1)获取系统在可接受风险范围内可用的信心;

(2)尝试在非正常情况和条件下的功能和特性;

(3)保证一个工作产品是完整的并且可用或者可被集成。

检测

(1)发现缺陷、错误和系统不足;

(2)定义系统的能力和局限性;

(3)提供组件、工作产品和系统的质量信息。

预防

(1)澄清系统的规格和性能;

(2)提供预防或减少可能制造错误的信息;

(3)在过程中今早检测错误;

(4)确认问题和风险,并且提前确认解决这些问题和风险的途径。

3、软件测试生命周期。(六个阶段)

第一阶段:计划(planning)

**确定软件开发总目标;

**给出软件的功能、性能、可靠性以及接口等方面的设想;

**研究完成该项目的可行性,探讨问题解决方案;

**对可供开发使用的资源、成本、可取得的利益多和开发进度做出评估;

**指定完成开发任务的实施计划。

第二阶段:需求分析(REquirement Analysis)

**对开发的软件进行详细的定义,由需求分析人员和用户共同讨论决定,哪些需求是可以满足的,并且给予确切的描述,写出软件需求说明书SRS(Software Requirement Specification)。

第三阶段:设计(Design)

 **1.概要设计说明书(HLD),针对的是模块和接口。(在设计阶段把各项需求转换成相应的体系结构,每一部分是功能明确的模块);

 **2.详细设计说明书:针对的是算法和数据结构(对每个模块要完成的工作进行具体的描述)。

第四阶段:程序编码(Coding)

**把软件设计转换成计算机可以接受的程序,即写成以某个程序设计语言表示的源程序清单,使用RDBMS工具建立数据库;

第五阶段:软件测试(Testing)

**软件测试按照阶段可以划分为:单元测试、集成测试、系统测试。

第六阶段:运行和维护(Run and Maintenance)

**这个阶段将软件交付用户正式使用,以后便进入维护阶段,可能有很多种原因需要对它进行修改,如软件错误,系统软件升级、增强软件功能、提高性能等。

4、软件研发组织结构

工作内容:人员、过程、工具。

5、软件开发模型(三种

第一种模型:瀑布模型

特点: 1、测试接入较晚;

     2、下一个阶段依赖于上一个阶段的结束。

适用范围: 需求明确的小项目。

第二种模型:螺旋模型

特点:1、瀑布模型和原型法的结合;

  2、风险分析;
		
  3、迭代过程;
		
  4、客户尽早参与,更能保证项目成功;
		
  5、测试介入的比较晚。

第三种模型:RUP模型

特点:1、项目活动分为两个(工作流和支持流);
	
  2、共有4个阶段(初始化、细化、构造、发布);
					
  3、增量、迭代。

6、缺陷。

(1)缺陷的根源(有7个原因):

1.缺乏有效的沟通,或者没有沟通;
	
2.软件复杂度;
	
3.编程错误;
		
4.不断变更的需求;
		
5.时间的压力;
		
6.缺乏文档的代码;
		
7.软件开发工具。

(2)缺陷的类型

1.遗漏;
		
2.错误;
		
3.额外的实现。

你可能感兴趣的:(软件测试)