一、软件测试的定义和目的

1、定义:使用人工和自动化的手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求,或是弄清预期结果与实际结果之间的差别。

软件测试的含义:

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

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

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

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

 

2、软件测试的目的

1)证明软件能正常运行;

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

3)提供组件、工作产品和系统的质量信息来进行质量管理。

 

3、软件测试工程师的主要工作

1)检视代码,评审开发文档;

2)进行测试设计、写作测试文档(包括测试计划、测试方案、测试用例等);

3)执行测试、发现软件缺陷,提交缺陷报告,并确认缺陷最终得到了修正;

4)通过测试度量软件的质量。

 

二、软件的生命周期

一般分为七个阶段:计划、需求分析、设计、编码、测试、运行、评价

需求分析阶段:写出软件需求说明书SRS(Software Requirement Specification)

设计阶段:需要完成设计说明书,包括概要设计HLD(High Level Design)、详细设计LLD(Low Level Design)

测试阶段:分为单元测试(UT)、集成测试(IT)、系统测试(ST)。

 

三、软件研发组织和流程

1、软件项目组常见人员架构

项目经理

QA质量保障人员:过程质量管理

软件开发组:开发经理、分析人员、设计人员、开发人员

软件测试组:测试经理、测试人员

配置管理组:配置经理、配置管理员(CMO)

(配置项:需求文档、计划文档、设计文档、源代码、可执行程序、测试文档、测试用例等。)

 

2、常见的软件研发流程:

瀑布模型

螺旋模型

RUP流程:(Rational Unified Process)统一软件开发过程

IPD流程:(Integrated Product Development)集成产品开发

 

四、软件中引入缺陷的原因

开发过程缺乏有效的沟通,或没有进行沟通;

软件复杂度越来越高;

编程中产生错误;

需求不断变更;

项目进度的压力;

不重视开发文档;

软件开发工具本身隐藏的问题。

 

缺陷的类型:遗漏、错误、额外的实现、可优化。

 

posted on 2018-07-27 16:07  spring1122  阅读(89)  评论(0编辑  收藏  举报