软件测试流程
1、瀑布型生命周期模型
自相而下,相互衔接
1)问题的定义及规划
定义:确定软件的开发目的及其可行性。制定项目总体开发计划。(发现问题并规划)
人员:【产品经理】,运营,开发老大,需求分析师,老板,项目经理等
输出:需求说明文档/原型图/PRD
2)需求分析
在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析,明确客户的需求,输出需求规格说明书最终版(原型图),提交评审。
人员:产品经理,开发人员,测试人员,UI设计(不是所有的人)
形式:会议
测试尽早介入的目的:1)了解需求,方便测试;2)提高用户体验度
3)设计
把需求分析得到的结果转换为软件结构和数据结构,形成系统架构。
概要设计:主要是架构的实现,指搭建架构、表述各模块功能、模块接口连接和数据传递的实现等项事务。
详细设计:对概要设计中描述的各模块进行深入分析等。其中需要包含数据设计说明。
人员:程序员
输出:概要设计和详细设计
4)编码
按照详细设计好的模块功能表,编程人员编写出计算机可运行的程序代码
5)软件测试
在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。测试方法主要有白盒测试和黑盒测试。建立详细的测试计划并严格按照计划进行。
单元测试:主要是测试程序代码,为的是确保各单元模块被正确的编译-----一般是开发来完成。
集成测试:单元测试后,将各单元组合成完整的体系,测试软件各单位之间的接口是否正确、数据能否正常传。-----比如说注册和充值这两个功能是否能够连通
系统测试:把软件系统搭建起来,按照软件规格说明书中的要求,测试软件其性能等是否和用户需求相符合,在系统中运行是否存在等等。---根据测试用例,进行完整的系统测试
验收测试:主要就是用户在拿到软件的时候,在使用现场,会根据前边所提到的需求,以及规格说明书来做相应测试,以确定软件达到符合效果的。----用户对软件进行验收
6)运行维护
软件维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用后,由于多方面的原因,软件不能继续适应用户的需求。要延续软件的使用寿命,就必须对软件进行维护。软件的维护主要包括纠错性维护和改进性维护两个方面。
人员:运维
2、V模型生命周期模型
RAD:通过开发和测试同时进行的方式来缩短开发周期,提高开发效率
二、软件测试流程
1、测试工作会遇到哪些人?
开发,产品经理,UI设计,客户,技术支持/实施/销售
2、测试各阶段的职责
1)测试设计阶段
测试用例设计:参照需求说明文档/原型图写出测试用例
测试用例评审:与需求不一致,修正。需求变更,修改。
人员:产品经理,开发人员,测试组长
2)测试执行阶段
执行测试用例
3)区分开发环境、测试环境、正式环境、准生产环境
开发环境:1)进行单元测试;2)代码的调试
测试环境:1)单元测试;2)集成测试;3)系统测试;4)正式验收测试;5)Alpha测试
正式环境:上线后,用户使用
准生产环境:模拟生产环境
在测试环境后台添加的数据和信息,不能够在生产环境看到。因为每个环境都是独立的,不同的服务器和数据库
3、软件测试的基本流程(重点)
1)测试需求分析阶段:阅读需求,理解需求,主要就是对业务的学习,分析需求点,参与需求评审会议。
2)测试计划阶段:主要任务是编写测试计划,参考软件需求规格说明书,项目总体计划,内容包括测试范围(来自需求文档),进度的安排,人力物力的分配,整体测试策略的制定,和风险的评估与规避措施有一个制定,一般由测试负责人编写,当然我们可能也会参与相关的评审工作。
3)测试设计阶段:主要任务是编写测试用例,会参考需求文档(原型图),概要设计,详细设计等文档,有不明确的也会及时和开发,产品经理沟通,用例编写完成后会进行评审。
4)测试执行阶段:首先搭建测试环境,执行预测(冒烟测试),以判定当前版本可测与否,如果预测通过,正式进入系统测试,遇到问题提交bug到缺陷管理平台,并对bug进行跟踪,直到被测软件达到测试需求要求,没有重大bug,测试结束----(完善测试用例)
5)测试评估阶段:出测试报告,对整个测试的过程和版本质量做一个详细的评估,确认是否可以上线。
软件开发流程、测试流程梳理
6)开发人员的工作流程:需求分析-得知功能组成及设计软件结构、数据结构(概要设计、详细设计)-编写代码单元测试-代码审查-打包提交测试部-等待测试提交bug-修复bug-等待测试回归bug-……N轮-版本上线-面向用户使用
7)测试人员的工作流程:需求分析--编写测试用例-评审测试用例-搭建测试环境-等待开发研发完成,提交测试包进行测试(酱油期)-部署测试包-冒烟测试(预测)-执行测试用例-bug跟踪处理(提交及回归bug)……N轮-版本上线-面向客户使用
三、常见笔试面试题
1、笔试题:
1)生命周期模型包括哪些阶段?你们开发的模型是什么?简化文字
问题定义及规划-需求分析-设计-编码测试-运行维护
敏捷开发模型
2)测试流程包含哪些阶段?
需求分析--编写测试用例-评审测试用例-搭建测试环境-等待开发研发完成,提交测试包进行测试(酱油期)-部署测试包-冒烟测试(预测)-执行测试用例-bug跟踪处理(提交及回归bug)……N轮-版本上线-面向客户使用
2、面试题
1)你们公司的开发流程是怎么样的?
了解需求概要设计详细设计编码打包提交测试部-等待测试提交bug-修复bug-等待测试回归bug-……N轮-版本上线-面向用户使用
2)你们公司的测试流程是怎么样的?各个阶段的输出是什么?
测试需求阶段:了解测试需求;
测试计划阶段:编写测试计划;
测试执行阶段:编写测试用例;
测试执行阶段:提交bug到问题库,直到没有重大bug,测试结束,完善测试用例;
测试评估阶段:确认是否可以上线,编写测试报告
相关阅读
1.需求 2.前言 我们可以快速的实现该工作审批流程,比如通过多个if-else去判断,但是当我们审批对象发生改变了,那我们的代码又
笔者在文中讲述了身处大规模团队之中,如何利用流程和工具减少沟通成本。上两篇中,我们探讨了大规模团队中可能会出现的沟通问题,以及
软件工程是一门研究用工程化方法构建和维护软件,并有效、实用的解决软件行业相关问题的软件学科。它涉及需求分析、程序设计、开发
步骤一、账户未登录情况下,点击淘宝网首页左上角【免费注册】。步骤二、根据页面提示输入手机接收验证码验证。若页面提示手机账户
淘宝电子凭证交易内容和流程是什么?随着电子凭证交易越来越受欢迎,很多关于淘宝电子凭证交易内容和流程的相关问题不约而来,今天小