P2—软件测试生命周期&软件测试流程

发布时间 2023-03-22 21:15:56作者: 糖果Tian

P2—软件测试生命周期&软件测试流程

1.软件测试生命周期模型

(1)瀑布型生命周期模型

介绍:

在1970年人类整理了第一个软件生命周期,即瀑布型生命周期模型也叫瀑布模型。
规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落,具有顺序性和依赖性。
每个阶段规定文档并需进行评审。

分析

需求分析阶段——输出规格说明书(原型图)————基本不用这个模型
瀑布模型特点:自上而下,有序性
缺点:测试介入比较晚——回溯成本高;测试周期比较长

(2)V模型

介绍:

RAD (Rap Application Development,快速应用开发)模型是软件开发过程中的一个重要模型,
由于其模型构图形似字母V,所以又称软件开发的V模型。
它通过开发和测试同时进行的方式来缩短开发周期,提高开发效率。

提示:

V模型测试是在需求阶段介入

(3)敏捷开发模型

介绍:

从1990年代开始逐渐引起广泛关注,是一种以人为核心、迭代、循序渐进的开发方法。
强调以人为本,专注于交付对客户有价值的软件。是一个用于开发和维持复杂产品的框架。
就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件,一直处于可使用状态。

提示:

特点:快
弱化文档,通过人与人之间的沟通实现需求分析

2.软件生命周期的各个阶段

(1)问题的定义以及规划

主要确定软件的开发目的及其可行性。制定项目总体开发计划。

(2)需求分析

在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析,明确客户的需求,输出需求规格说明书终版(原型图),提交评审。
提示:需求规格说明书简写(SRS)

(3)设计

把需求分析得到的结果转换为软件结构和数据结构,形成系统架构。
概要设计:主要是架构的实现,指搭建架构、表述各模块功能、模块接口连接和数据传递的实现等项事务。
详细设计:对概要设计中表述的各模块进行深入分析等,其中需要包含数据库设计说明。

(4)编码

按照详细设计好的模块功能表,编程人员编写出计算机可运行的程序代码

(5)软件测试

在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。
测试的方法主要有白盒测试跟黑盒测试两种。建立详细的测试计划并严格按照计划进行。
单元测试:主要是测试程序代码,为的是确保各单元模块被正确的编译,比如有具体到模块的测试,也有具体到类,函数、方法的测试等。--- 般是开发来完成
集成测试:单元测试后,将各单元组合成完整的体系,测试软件单位之间的接口是否正确、数据能否正常传递。---比如说注册和充值这两个功能是否能够连通~
系统测试:把软件系统搭建起来,按照软件规格说明书中所要求,测试软件其性能功能等是否和用户需求相符合,在系统中运行是否存在漏洞等。----根据测试用例,进行完整的系统测试。
验收测试:主要就是用户在拿到软件的时候,在使用现场,会根据前边所提到的需求,以及规格说明书来做相应测试,以确定软件达到符合效果的。--用户对软件进行验收。

(6)运行维护

软件维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用后,由于多方面的原因,软件不能继续适应用户的需求。
要延续软件的使用寿命,就必须对软件进行维护。软件的维护主要包括纠错性维护和改进性维护两个方面。

3.软件测试工作流程图

提示:

测试计划:测试工作统筹安排(测试内容,哪些人,任务分配,测试环境、工具、时间安排) --测试负责人/主管/组长
编写测试用例:什么测试用例---具体怎么来进行测试的文档
软件在符合什么的条件下可以发布:剩余bug数量很少+用例执行覆盖率
发布流程:开发打包--》运维/运营/开发--》部署到生产环境,实现发布上线
开发环境:开发人员写代码的环境
测试环境:测试人员进行测试的环境(1个或1个以上)
预发布环境(UAT环境):验收测试(UAT测试)进行的环境
生产环境:真实用户使用的环境

4.A/B测试

先发布的功能先让A部分的用户进行更新,再根据用户的反馈,再更新B部分的功能

5.灰度测试

先发布部分功能,然后看用户的反馈,再去发布另外一部分的功能的更新