一、软件的生命周期
1、瀑布型生命周期模型(目前基本不用这个模型)
瀑布模型特点:
自上而下有顺序性和依赖性(现在基本不用这个模型)
瀑布模型缺点:
测试介入比较晚—回溯成本比较高—测试周期比较长
2、RAD模型(V模型)
注意:
①V模型,测试在需求分析阶段就介入。
②SRS (Software Requirements Specification) 软件需求说明书
③V模型是对瀑布模型的优化改进。
3、软件生命周期的各个阶段
4、敏捷开发模型(现在常用模型)
举例:
XM:文字聊天 语言聊天 视频聊天 朋友圈 支付 小程序
时间:一年
互联网特点:快速
迭代第一个版本:文字聊天 语言聊天 2个月时间
迭代第二版本:朋友圈 支付 3个月时间
迭代第三个版本:小程序
…
…
…
结合用户需求不断更新
注意:
敏捷开发模型的核心就是先迅速完成其中的一部分功能,然后上线软件,之后再陆续完成并上线其它功能。
敏捷开发模型的特点:
①快
②弱化文档
③通过人与人之间的沟通实现需求分析
二、软件测试过程
1、软件测试工作流程图
测试计划:测试工作统筹安排(测试内容,哪些人,任务分配,测试环境、工具、时间安排)—测试负责人/主管/组长
编写测试用例:什么是测试用例?—具体怎么来进行测试的文档
软件在符合什么的条件下可以发布:剩余bug数量很少+用例执行覆盖率
发布流程:开发打包—》运维/运营/开发—》部署到生产环境,实现发布上线
开发环境:开发人员写代码的环境
测试环境:测试人员进行测试的环境(1个或一个以上)
预发布环境(UAT环境):验收测试(UAT测试)进行的环境
生产环境:真实用户使用环境
2、软件测试的基本流程
三、笔试面试题
注意:
①测试流程各个阶段的输出是:
需求分析—根据需求规格说明书输出项目测试点列表
用例设计----测试用例文档
执行测试----bug
评估测试—测试报告的输出
②在测试环境后台修改数据,在生产环境看不到