需求分析阶段----输出需求规格说明书(原型图)
软件生命周期: 从研发到最终废弃不用所经历的各个阶段
生命周期模型
瀑布模型:(自上而下 有顺序 测试介入较晚 回溯成本高 测试周期较长)
V模型 通过开发和测试同时进行的方式来缩短开发周期 测试在需求阶段介入
软件生命周期的各个阶段
1、问题的定义和规划 确定软件的开发目的及可行性。制定项目总体开发计划;
2、需求分析 在确定软件开发可行的情况下,对软件需求实现的各个功能进行详细分析,明确客户需求,输出需求规格说明书终版SRS(原型图),提交评审;
3、设计 把需求分析的结果转换为软件结构和数据结构,形成系统架构。
概要设计:主要是架构的实现,指搭建架构,表述各模块功能,模块接口连接和数据传递的实现等项事务。
详细设计:对概要设计中表述的各模块深入分析,其中需要包含数据库设计说明
4、编码 按照详细设计好的模块功能表,编程人员编写出计算机可运行的程序代码
5、软件测试(白盒或者黑盒) 单元集成---集成测试---系统测试---验收测试
6、运行维护 软件生命周期持续时间最长的一个阶段 软件维护主要包括纠错性维护和改进性维护两方面
敏捷开发模型
强调以人为本,专注于交付对客户有价值的软件。用于开发与维护复杂产品框架。把一个大项目分为多个互相联系,但也可独立运行的小项目,并分别完成,在此过程软件一直处于可使用状态。
特点 快 弱化文档(通过人与人的沟通实现需求分析)
软件测试工作流程图(重点!!!)
需求分析--测试用例编写及设计---测试执行---bug及bug跟踪---通过2~4轮测试---测试评估---测试报告---预发布(uat测试)---发布上线
测试计划:测试工作统筹安排(测试内容,哪些人,任务分配,测试环境,时间安排)---测试负责人/主管/组长
编写测试用例:测试用例---具体怎么来进行测试的文档
软件在什么条件下可以发布:剩余bug数量很少+用例执行覆盖率
发布流程:开发打包---》运维/运营/开发---》部署到生产环境 实现发布上线
开发环境:开发人员写代码的环境
测试环境:测试人员进行测试的环境
预发布环境(UAT环境):验收测试(UAT测试)进行的环境
生产环境:真实用户使用环境
章节提问
1、生命周期包括哪些阶段?开发模型是什么?
2、测试流程包含哪些阶段?
3、你们公司的开发流程是怎么样的?---了解
4、你们公司的测试流程是怎么样的?各个阶段输出是什么?
需求分析---根据需求规格说明书输出项目测试点列表
用例设计---测试用例文档
执行测试---bug
评估测试---测试报告输出
5、开发环境、测试环境、生产环境是什么?在测试环境后台添加的数据和信息(测试环境可以看到),能够在生产环境看到吗?