系统测试(System Testing)
阶段 产出
1. 计划——《系统测试计划》
2. 设计——《系统方案》(系统测试项和系统测试子项)
3. 实现——《系统测试用例》
4. 执行——《测试报告》
概念:将已经集成好的软件系统,与其他系统元素结合在一起,在实际运行环境下,进行一系列的测试活动。
目的:验证系统对需求的符合程度;
对象:软硬件集成一起的系统,并尽可能地在实际运行环境与条件;
常用类型:
1、功能测试——(针对软件质量中)“功能性”
目的:根据产品的需求规格说明书和测试列表,验证产品的功能实现是否符合需求规格;
关注点:
● 功能是否遗漏
● 功能实现是否满足用户需求和系统设计的隐性需求
● 输入能否正确接受,输出结果是否正确
测试方法:等价类、边界值、判定表、因果图、正交、状态迁移、流程分析……
2、性能测试——“效率”
目的:测试软件集成系统中运行的性能,度量系统相对于目标的差距;
为什么要进行性能测试呢?
● 因为它是产品质量的重要组成部分;
● 用户眼中的良好形象;
● 节省成本(主要是物理设备成本)的重要手段
性能指标是怎么定义的?(需求规格中的)
● 直接提出的性能指标
● 以某个版本为基准
● 与竞争对手的同类产品的比较
性能指标的特征:
● 需求性(设计出来的)
● 代表性
● 可用性
● 可测性
● 完整性:从三个方面——能力(请求量,在线用户量等)、质量(响应率,正确率,延时)、软硬件配置(物理设备)
按目的分类:
● 产品性能质量测试(有指标定义)
● 基准性测试(无指标定义)
● 性能规划测试(有指标定义)
性能测试的基本步骤:(是一个反复执行,重复优化的过程)
1. 性能测试需求分析
2. 业务功能验证
3. 测试环境准备
4. 测试脚本与数据准备
5. 测试场景分析
6. 测试场景监控
7. 测试执行
8. 结果分析
性能测试结论(明确的)
● 指标类:明确产品在不同条件下的性能指标;
● 稳定类:系统是否稳定,每个模块是否稳定;
● 对比类:通过好坏对比来知道差距;
● 验证类:通过与否;
● 优化类:优化方向,优化效果
3、压力测试(stree Testing)——“效率、可靠性”
目的:验证系统在其资源超负荷的情况下的表现(自我保护能力、可靠性),发现性能瓶颈、优化系统;
分类:
● 稳定性压力测试
● 破坏性压力测试