软件测试生命周期及流程

一、软件生命周期(重点)
软件生命周期(SDLC,Systems Development Life Cycle,SDLC)是软件开始研制到最终被废弃不用所经历的各个阶段。在不同阶段里,由不同的组织、个人和资源进行着明确的任务。
要清楚生命周期阶段,先从不同的生命周期模型进行了解。常见的有瀑布模型、V模型、敏捷开发模型。实际工作中根据不同的领域或不同地方再进行具体的划分。
二、软件生命周期模型
1>瀑布型生命周期模型
在1970年人类整理了第一个软件生命周期,即瀑布型生命周期模型也叫瀑布模型。包括问题定义及规划、 需求分析、软件设计、程序编码、软件测试和运行维护等六个基本活动,并且规定了它们自上而下,相互衔接的固定次序,如同瀑布流水,逐级下发,具有顺序性和依赖性,每个阶段规定文档并需进行评审。
1、问题的定义及规划
主要确定软件的开发目的及其可行性。制定项目总体开发计划。
2、需求分析
在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析,明确客户的需求,输出需求规格说明书最终版(原型图),提交评审。
3、设计
把需求分析得到的结果转换为软件结构和数据结构,形成系统架构。
概要设计:主要是架构的实现,指搭建架构,表述各模块功能、模块接口和数据传递的实现等项事务。
详细设计:对概要设计中表述的各模块进行输入分析等,其中需要包含数据库设计说明。
4、编码
按照详细设计好的模块功能表,编程人员编写出计算机可运行的程序代码。
5、软件测试
在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。测试的方法主要有白盒测试跟黑盒测试两种。建立详细的测试并严格按照计划进行。
单元测试:主要是测试程序代码,味道是确保各单元模块被正确的翻译,比如具体到模块的测试,也有具体到类,函数,方法的测试等,——一般是开发来完成。
集成测试:单元测试后,将各单元组合成完成的体系,测试软件单位之间的接口是否正确。数据能否正常传递,-比如说注册和充值这两个功能是否能够连通。
系统测试:把软件系统搭建起来,按照软件规格说明书中所要求,测试软件其性能等是否和用户需求相符合,在系统中运行是否存在漏洞等,–根据测试用例,进行完整的系统测试。
验收测试:主要是用户在拿到软件的时候,在使用现场,会根据前边所提到的需求,以及规格说明书来做相应测试,以确定软件达到符合效果的。–用户对软件进行验收。
6、运行维护
软件维护是软件生命周期中持续时间最长的阶段,在软件开发完成并投入使用后,由于多方面的原因,软件不能继续适应用户的需求,要延续软件的使用寿命,就必须对软件进行维护,软件的维护主要包括纠错

《概括》
问题的定义及规划
人员:〖产品经理〗,运营,开发老大,需求分析师,老板,项目经理等等
输出:需求说明文档/原型图/PRD
需求分析
人员:产品经理,开发人员,测试人员,UI设计
形式:会议
设计
人员:程序员
输入:概要设计、详细设计
编码
人员:程序员
软件测试
人员:测试人员&开发人员
运行维护
人员:运维组
上线,版本迭代,bug修复
测试工作中会遇到哪些人员:开发、产品、UI设计、客服、技术支持/实施/销售
2>V模型
RAD(Rap Application Development,快速应用开发)模型是软件开发过程中的一个重要模型,由于其模型结构图似字母V,所以又称软件开发的V模型,它通过开发和测试同时进行的方式来缩短开发周期

3>敏捷开发模型(产品需求-开发-测试)
从1990年代开始逐渐引起关注,是一种以人为核心,迭代、循序渐进的挨罚方法,强调以人为本,专注于交付对客户有价值的软件。是一个用于开发和维持复杂产品的框架。就是要把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。
微信:QQ聊天、定位、语音、视频语音通话、红包、转账、朋友圈、钱包等
第一个迭代:V1.0.1 QQ聊天、语音、红包、朋友圈 2-6周
第二个迭代:V1.0.2
三、软件测试流程(重点)
测试需求阶段:阅读需求。理解需求,主要就是对业务的学习,分析需求点。参与需求评审会议。
测试计划阶段:主要是编号测试计划,参考软件需求规格说明书,项目总体计划,内容包括测试范围(来自需求文档)、进度的安排,人力物力的分配,整体测试策略的制定,和风险的评估与规避措施,有一个制定,一般由测试负责人编写,当然我们可能也会参与相关的评审工作。
测试设计阶段:主要是编写测试用例,会参考需求文档(原型图),概要设计、详细设计等文档,有不明确的也会及时和开发、产品经理沟通。用例编写完成后会进行评审。
测试设计阶段包含测试用例设计和测试用例评审
测试用例设计:参照需求说明文档/原型图写出测试用例
测试用例评审:与需求不一致,修正。需求变更,修改。
人员:产品经理,开发人员,测试老大
测试执行阶段:首先搭建测试环境,执行预测(冒烟),以判定当前版本可测与否,如果预测通过,正式进入系统测试,遇到问题提交bug到缺陷管理平台,并不bug进行跟踪,知道被测软件达到测试需求要求,没有 重大bug,测试结束,——完善测试用例。
〖测试执行阶段:
执行测试用例〗
测试评估阶段:出测试报告,对整个测试的过程和版本质量做一个详细的评估,确认是佛可以上线。

四、软件开发流程、测试流程梳理
开发人员的工作流程:需求分析——得知功能组成及设计软件结构,数据结构(概要设计、详细设计)------编写代码-----单元测试----代码审查------打包提交测试部—等待测试提交bug----修复bug------等待测试回归bug-----、N轮----版本------面上用户使用。
测试人员的工作流程:需求分析——编写测试用例——评审测试用例——搭建测试环境——等待开发研发完成,提交测试包进行测试(酱油期)——部署测试包——冒烟测试(预测)——执行测试用例——bug跟踪处理(提交及回购bug)——N轮——版本上线——面向用户使用

开发环境?开发人员使用。1.进行单元测试。2.代码的调试
测试环境?测试人员使用。1.单元测试。2.集成测试。3.系统测试。4.正式验收测试,alpha测试
生产环境?
你在测试环境后台添加的数据和信息,不能够在生产环境中看到。

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