软件测试的定义、分类、方法、生命周期

1.软件测试的定义:

关于软件测试的定义,首先要明确测试的定义:以检验产品是否满足需求为目标。而软件测试,自然是为了发现软件(产品)的缺陷而运行软件(产品)。比较标准的软件测试的定义是:在规定的条件下对程序进行操作,以发现错误,对软件质量进行评估。 

要完整地理解软件测试,就要从不同方面和视角去辨证地审视软件测试。概括起来,软件测试就是贯穿整个软件开发生命周期、对软件产品(包括阶段性产品)进行验证和确认的活动过程,其目的是尽快尽早地发现在软件产品中存在的各种问题—与用户需求、预先的定义不一致的地方。

详解参考:https://blog.csdn.net/moakey/article/details/78777877

2.软件测试的分类:

软件测试的分类

软件测试的定义、分类、方法、生命周期

软件测试的定义、分类、方法、生命周期

两种分类是从不同的角度区分的,分别是从软件和产品的角度区分的,更详细的测试分类可以参考这里:https://www.cnblogs.com/zhuminghui/p/10788968.html

3.软件测试的生命周期及测试流程:

一、软件的生命周期

定义:软件从产生到报废的生命周期。

生命周期包括:问题的定义及规划(开发方与需求方讨论)、需求分析、软件设计、软件编码、软件测试(单元测试、集成测试、系统测试、验收测试)、运营维护阶段。(行业性概念)

二、软件开发的基本流程

开发人员的工作流程:需求分析-得知功能组成及设计软件结构、数据结构(概要设计、详细设计)-编写代码单元测试-代码审查-打包提交测试部-等待测试提交bug-修复bug-等待测试回归bug-……N轮-版本上线-面向用户使用

 测试人员的工作流程:需求分析--编写测试用例-评审测试用例-搭建测试环境-等待开发研发完成,提交测试包进行测试(酱油期)-部署测试包-冒烟测试(预测)-执行测试用例-bug跟踪处理(提交及回归bug)……N轮-版本上线-面向客户使用


三、软件测试的阶段

1)测试需求分析阶段:阅读需求,理解需求,主要就是对业务的学习,分析需求点,参与需求评审会议。

2)测试计划阶段:主要任务是编写测试计划,参考软件需求规格说明书,项目总体计划,内容包括测试范围(来自需求文档),进度的安排,人力物力的分配,整体测试策略的制定,和风险的评估与规避措施有一个制定,一般由测试负责人编写,当然我们可能也会参与相关的评审工作。

3)测试设计阶段:主要任务是编写测试用例,会参考需求文档(原型图),概要设计,详细设计等文档,有不明确的也会及时和开发,产品经理沟通,用例编写完成后会进行评审。

4)测试执行阶段:首先搭建测试环境,执行预测(冒烟测试),以判定当前版本可测与否,如果预测通过,正式进入系统测试,遇到问题提交bug到缺陷管理平台,并对bug进行跟踪,直到被测软件达到测试需求要求,没有重大bug,测试结束----(完善测试用例)

5)测试评估阶段:出测试报告,对整个测试的过程和版本质量做一个详细的评估,确认是否可以上线。
流程图

软件测试的定义、分类、方法、生命周期