软件性能测试分析的几种方法

来源:网络发布时间:2010-07-31

  1. 能力验证

  能力验证一般采用这样的描述:“该系统是否能在A条件下具备B能力?”。这里强调以下内容:

  (1) 充分准备以下内容:硬件设备、软件环境、网络条件、基础数据

  (2) 充分准备测试场景、典型的场景包括操作序列、并发用户数量条件、用例。

  该部分包括使用到上述测试方法:性能测试方法、可靠性测试、压力测试、失效恢复测试

  2. 规划性能

  该分析方法关心的是“应该如何才能使系统具有我们要求的性能能力”,“应该如何调整系统配置,使系统能够满足增长的用户数的需要”等问题。这个部分常常使用到的测试方法是:负载测试、配置测试、压力测试。

  3. 发现缺陷

  这个环节中是交付给用户的主要工作成果。需要多和开发人员作沟通、多次迭代发现问题、根据用户的需求定义与缺陷的涉及范围、制定一个解决缺陷的优先级。由于软件永远有BUG这一真理,所以发现缺陷不是一次就能结束的工作。比较适合作为服务外包。持续进行。

  4. 性能调优

  一个标准的性能调优过程是:

  (1) 确定基准环境、基准负载和基准性能指标。

  (2) 调整系统运行环境和实现方法,执行测试。

  (3) 记录测试结果、进行分析

  在J2EE性能测试中有很多常见的错误,比如:对于某些建立在J2EE/EJB技术上的应用,在服务启动的时候,没有注意到测试之前首先进行一段时间的预热。这是因为JAVA语言的hot-spot技术特性决定的,这种技术允许weblogic第一次运行应用的时候将字节码编译为本地代码并执行,这样在后续的执行过程中执行过程会大大加快,但第一次由于存在一个编译过程会比较慢。如果使用这个时间来作为基准那么就容易得出错误的结论。

  我对第2个过程比较擅长、具体下来包括硬件环境的调优、Weblogic调优、Oracle调优。这个过程中也是使用工具最多的测试环节。