Hi, 如果有任何想法与我沟通, 请用: lifr_nj 在 msn.com

性能测试模型分析:性能参数(Performance Factor)

上一篇 / 下一篇  2013-06-02 00:22:25 / 个人分类:PerformanceTest

性能参数是包括所有会对性能产生影响的因素.  比如软件参数设置, 硬件的能力, 输入的类型等等。 性能测试的结果只有在给定性能参数的条件下, 才有意义。
 
在性能测试中, 性能参数类似于功能测试中的”输入组合“, 所以,设计时都会面对同一个问题, 不可能穷举的可能。即使对于一个小的软件, 性能参数的组合也可能是一个非常庞大的数字。这一点对于 企业应用软件产品 尤其是一个问题。 因为客户的部署环境是千差万别的。
 
在性能测试分析中,
1) 首先要识别出所有性能参数, 重要的和不重要的。 需要注意的是, 性能参数的重要性并不是绝对的, 而是取决于性能测试的目的。 比如对于验证客户环境的性能, 硬件配置是很重要的参数;对于性能调优为目的的测试, 硬件配置并不重要, 软件的参数设置时很重要的参数。
 
2) 然后对性能参数打包。既然不能覆盖所有组合, 当然只能选择典型的组合来测试。
 
分类

影响性能参数是包括所有会对性能产生影响的因素.这其实会包括非常多的因素.他们可以分为下面一些类型.

 

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

TAG:

 

评分:0

我来说两句