mohanzb 2020-01-02
一、软件质量模型
1、功能性:功能是否满足用户需求
2、易用性:是否好用
3、可靠性:在指定条件下,软件是否正常运行
4、效率:性能好不好
5、维护性:软件可被修改的能力
6、可移植性:在不同软硬件环境下的适应能力
二、应用:
1、产品型软件:针对大众的软件
形成文档:PRD (产品需求文档)
2、项目型软件:针对个人或企业的软件
形成文档:SRS (软件需求规格说明书)
三、软件的生命周期
计划、分析、设计、开发、测试、运维
四、软件测试的目的:通过测试减少软件缺陷,提升产品质量
五、软件测试的时机:最佳介入时机:需求分析阶段
缺陷放大模型:测试介入越早,软件修复的成本越低
六、软件测试阶段:
1、单元测试阶段:
白盒测试:①静态分析法:看代码流程;②动态分析法:运行代码进行测试
参考文档:LLD
2、集成测试阶段:灰盒测试
参考文档:HLD
3、系统测试阶段:
黑盒测试:①测试类型:功能测试、非功能测试;②方法:测试用例设计方法
参考文档:PRD/SRS
衡量指标:需求覆盖率
4、验收测试阶段:(检验产品是否符合要求)
①项目型软件:由甲方根据需求进行验收
②产品型软件:
α测试:内测:由开发组织用户到公司进行测试,可随时记录问题,过程可控
β测试:公测:对外测试,针对选中的特定用户
γ测试:上线前候选版本的测试
参考文档:PRD/SRS
十二、软件测试的四大核心过程
1、分析:测试需求分析,明确测什么
全面分析需求文档:显性需求、隐形需求
形成:软件测试需求分析说明书
2、设计:
①计划:明确测试范围、资源配置 形成:测试计划文档
②方案:明确怎么测 形成:测试方案文档
3、实现:测试用例的编写及评审、数据准备、环境搭建、脚本
形成:测试用例文档
4、执行
①执行测试用例:验证实际结果是否与预期结果一致
一致:用例通过;不一致:用例失败:提交缺陷
②提交缺陷,跟踪缺陷:
⑴缺陷:验证的实际结果与预期结果不一致
⑵缺陷的生命周期:
测试提交缺陷-开发修改缺陷-测试验证缺陷-通过-关闭缺陷/-不通过-返回给开发
⑶开发给予的解决方案:
⑷缺陷的描述:在XX模块下,做了XX操作,产生了XX问题
5C原则:准确;清晰;简明;完整;一致
⑸通过缺陷管理工具来提交:信息一致、有效跟踪缺陷、利于BUG分析
⑹缺陷的严重程度:
⑴致命:软件崩溃;造成数据丢失
⑵严重:单功能或多功能的缺失
⑶一般:多余的实现;不太重要功能的缺失
⑷提示:提示信息的缺失或错误
⑺缺陷的类型:错误、遗漏、多余的实现、可以改进的
⑻优先级:根据功能模块的重要性决定
⑼缺陷集中现象:找free bug,针对缺陷集中的模块或相关功能模块,更容易找到BUG
③提交缺陷报告
④提交测试报告