六、设计测试模型
1.业务模型的设计
一个系统的业务模型是通过业务调研获得,业务模型的正确性反映在两个方面首先业务选择的正确性和业务比例的正确性。
首先业务选择,一个系统可能支持几百个业务活动(也有叫做交易)但是只有少数的业务活动非常频繁,占总业务量的80%以上,那么在性能测试时只需关心这些占了大部分业务量的少量业务上。
其次业务比例,如何精确统计业务的数量是关键问题,针对一个全新的系统可能要通过对使用系统的涉众进行调研,搞清楚他们群体数量,操作行为周期。在通过组合这些数据确定在常规业务日中各种业务占总业务的比率,同时也要考虑特殊交易日的情况,
例如某一个商务活动或周期性的业务结算日等都是特殊交易日,在特殊交易日时某一类业务量可能突然增高很多那么在常规业务日的业务比例就不再合适,这点在业务模型上要进行区分。常规业务模型用来测试系统容量,特殊日业务模型要单独做压力负载测试场景。
对于已上线运营的系统做业务模型的调研相对简单,不再需要去调研那么多的涉众,只需与运营维护部门进行协调,由他们协助测试需求调研人员提取系统中的历史数据就可以,那么在数据选择上要有些规则,要选取相对长时期的数据比如几个月,有条件的选取一年数据,取一年中每月平均业务量,选取年度高峰月业务数据,选取月度高峰日业务数据。
2.测试模型
业务模型是根据系统运营真实数据得来的,真实反映系统运营的业务状况。测试模型是以业务模型为基础根据测试需求不同对业务模型调整或不调整纳入到测试场景中直接使用。
七、性能指标分析方法
1.性能测试指标
业务处理能力:每秒处理交易数量
业务响应性:每种业务执行响应时间
业务正确率:执行过程中通过事务占总业务比例
系统资源指标:系统资源占用率
2.业务处理能力
业务处理能力是评测系统每秒所能处理的最大业务量,单位是Transaction/sec
计算每秒处理业务量需要两个关键数据,一个是在指定时间内的指定业务量,二是指定的时间段。如何选择这两个数据是非常关键。通常业务调研阶段给的每天平均业务量或者某高峰日最大业务量。如何转换数据为每秒业务量,通常有算法:
28规则,这是比较常用的计算方法
例如:一个系统日交易高峰某100000笔交易,系统每天运营8个小时
那么计算规则是 100000笔*80% / (8*3600*20%) =14笔/秒 一、概述
本文目的是提供性能测试分析人员在测试需求分析阶段提供技术指导作用,指导其对采集的业务数据进行整理并转换为合理的项目性能需求指标,并提供测试执行人员在执行过程中以此为目标。
二、名词解释
· 业务模型:描述业务系统在运营过程中核心交易配比(通常采集80%业务量的交易作为参考)清晰描述每个交易在系统业务量中的比例
· 测试模型:在测试执行时采用的交易配比模型。
三、数据源分析
· 线上业务数据
· 运维数情况数据
· 未来业务增长数据
四、 输出描述
1.测试需求分析报告中要清晰描述本次测试要进行哪几种类型的测试。例如容量测试、稳定性测试、异常测试、速度测试、负载测试等
2.测试需求分析报告中要清晰描述测试模型情况,测试模型和业务模型是有区别的,业务模型是从线上业务实际情况统计得来的,统计的数据是真实的线上数据,因此业务模型是线上交易分布的真实展现。测试模型是以业务模型为依据并结合测试需要对业务模型进行调整。例如需要调高某一类交易所占比例来实现测试目的。
3.测试需求分析报告中要清晰描述测试指标,测试指标是用来评价一个系统是否满足性能需求的标准,测试指标包括系统响应性、系统可用性、系统资源占用率。
五、测试类型选择
1.常见性能测试类型
2、被测试系统背景分类
3、系统与测试类型MAP
一个系统的业务模型是通过业务调研获得,业务模型的正确性反映在两个方面首先业务选择的正确性和业务比例的正确性。
首先业务选择,一个系统可能支持几百个业务活动(也有叫做交易)但是只有少数的业务活动非常频繁,占总业务量的80%以上,那么在性能测试时只需关心这些占了大部分业务量的少量业务上。
业务模型是根据系统运营真实数据得来的,真实反映系统运营的业务状况。测试模型是以业务模型为基础根据测试需求不同对业务模型调整或不调整纳入到测试场景中直接使用。
业务处理能力是评测系统每秒所能处理的最大业务量,单位是Transaction/sec
例如:一个系统日交易高峰某100000笔交易,系统每天运营8个小时
那么计算规则是 100000笔*80% / (8*3600*20%) =14笔/秒
最新内容请见作者的GitHub页:http://qaseven.github.io/