影响性能参数是包括所有会对性能产生影响的因素. 这其实会包括非常多的因素. 他们可以分为下面一些类型.
Factor |
Samples |
服务应用程序配置
|
服务应用程序的一些参数配置会对性能造成影响. l 比如某种工作线程的数量, l 比对于流水线类型的性能模型. 一个Data配置了几个模块进行处理显然会影响Processing Time. l 比如后台运行的报表程序
|
同步调用的第三方应用程序
|
比如银行交易处理时, 会同步调用Core Banking System, 那么CBS的性能也会直接影响交易处理的Response Time)
|
基础软件
|
比如应用程序服务器, 操作系统, Database服务器
|
硬件配置
|
CPU, Memory, Storage 百兆网络还是千兆网络.
|
其他 |
其他一些系统特定的因素. |
总之, 有非常多的因素会对系统的性能造成影响. 测试中不可能把每一个因素都涉及到, 更别说他们的组合了. 为了能进行有效的测试, 需要对性能参数打包。
打包影响性能参数如何确定性能测试中的影响性能参数的具体的取值. 这是性能测试准备中最关键的步骤. 这就和功能测试设计testcase一样, 如何能设计出最有效率的testcase.
这个时候, 需要把相关的因素打包, 这样在性能测试的时候就不用考虑每一个因素, 而是考虑有限的一些”因素的组合”.
对”影响性能参数”打包的目的是, 在设计性能测试Case时, 不用处理如此庞大的因素所有组合, 而是挑选一些合理的预想定义好的组合.
比如说, 对 基础软件, 硬件配置, 网络配置 进行打包, 归纳出三种组合: 小型系统, 中型系统, 大型系统.
|
CPU/Mem/Storage |
OS/AppServer/DB |
Network |
小型系统 |
2Cores/4G/7200RPM(SATA) |
Linux/JBoss/MySQL |
100M |
中型系统 |
4Cores/8G/15000RPM(SAS) |
Windows2008/WAS/SQLServer |
1G |
大型系统 |
4Node cluster, Each Node 2Cores/4G/SAN |
Aix/WAS Cluster/Oracle |
APP-DB: 10G Ethernet Storage Network: 4G光纤 |
对于输入类型和应用程序相关的配置, 参考典型用户的使用场景. 有下面的组合, 以一个监控系统为例
使用场景 |
监控 |
命令 |
监控为主型 |
每个Device每天1000条数据 |
每个Device每天接受2个命令 |
发送命令为主型 |
每个Device每天100条数据 |
每个Device每天接受200条命令 |
平衡型 |
每个Device每天500条数据 |
每个Device每天接受100条命令 |
对于静态压力模型的性能因素, 例子如下
|
Device |
Hierarchy Levels |
小型网络 |
100 |
1 |
中型网络 |
5000 |
3 |
大型网络 |
100000 |
5 |
注意
性能参数的选定需要和性能测试的Stakeholder作充分的沟通, 首先要理解对方希望的性能测试参数, 然后要让对方理解你简化参数的思路和原因。