一、软件产品质量模型
功能性:满足明确和隐含需求的功能
可靠性:能够处理异常情况,快速恢复
易用性:简单,易用
效率性:资源占用率少,性能好
维护性:可修改维护的能力
可移植:适用多个环境
二、软件测试常见分类
1、是否覆盖代码
黑盒测试
白盒测试
灰盒测试
2、阶段划分
单元测试:对软件中最小的测单元进行测试
集成测试:对多个单元组装后的产物进行测试
系统测试:把软件看成一个整体进行测试
验收测试:以最终用户的角度确认软件是否符合预期
3、是否运行划分
静态测试
动态测试
4、是否自动化
手工测试:
自动化测试:
5、其他分类
冒烟测试:对基本功能、主要功能进行测试
回归测试:对bug或用例回归测试
随机测试:随机测试,避免惯性思维
探索测试:探索复杂场景,容易被忽视的场景
三、软件开发模型
1、瀑布模型
过程:需求分析-概要设计-详细设计-编码-测试-维护
优点:阶段清晰
缺点:依赖于需求分析的成果
适用:需求明确,大型稳定项目
2、快速原型
过程:快速分析-构造-运行-客户评价
优点:支持客户参与,适用于灵活中小型项目
缺点:文档不完善,不能满足大型项目的要求
适用:需求灵活的中小型项目
3、v模型
过程:开发与测试分开,开发在左边,测试在右边
优点:包含底层测试和高层测试
缺点:测试介入时间晚,在编码后介入
4、W模型
过程:开发与测试交叉,开发啊一个V,测试一个V
优点:测试介入时间早
缺点:步骤复杂,对人员要求高
四、软件缺陷
1、软件或程序存在各种问题及错误
2、缺陷判断标准
未达到需求文档的功能
出现了需求文档指明不会出现的错误
超出了需求的范围
未达到需求指定的目标
软件不易理解,难以使用,运行速度慢
五、缺陷报告关键因素
缺陷ID、缺陷状态、缺陷标题、严重程度、优先级、详细信息