关于该如何考核性能测试的成果这个问题,与其说考核成果,不如更为准确地称之为对测试结果的分析。

  主要可以考虑以下几个方面:

  1、性能测试需求是否覆盖完整
  业务不仅是功能测试的根本,也是性能测试的前置条件。一个成果性能测试肯定是大优化覆盖了业务路径,包括核心业务功能模块和逻辑。

  2、性能测试计划是否合理
  a)测试前计划所需的软、硬件环境配置
  包括服务器CPU/Mem/HD等,还有网络带宽和路由/交换机等网络拓扑。其对整个测试结果起到决定性作用,也对测试代理机和工具等给予支持。
  b)测试进度安排是否充分
  这里主要指对于测试方案制定、测试脚本开发、测试执行、测试结果分析总结等一系列时间节点是否满足整个项目测试计划和进度。我们知道性能测试比较依赖环境、工具等,若该阶段花费太多时间成本,对整个测试项目会有严重影响。

  3、性能测试方案是否有效
  测试方案及策略是整个性能测试的指导性纲要,对于测试方法、技术、选择的业务脚本,都得在性能测试方案中体现。

  4、性能测试脚本是否高效
  这里已经默认选择了充分的业务场景进行测试。对于整个性能测试结果来说,核心部分是开发的测试脚本,能够用高效的代码来执行每一个业务功能,充分、完整的覆盖所有路径,则可以保障测试结果的有效和整个性能测试的质量。另外,脚本本身如开发之代码,过多调用进程和不释放内存等低质量语句,会使得测试执行变本加厉,从而影响到整个测试,甚至产生的结果会有严重差异。

  5、性能测试执行日志是否加载
  这里注意不是整个测试结果数据,是执行测试时每个细节、步骤的日志信息。若性能测试执行时不开启或开发产生日志信息,则丢失了第一时间的问题列表数据,对于日后分析带来不便。

  6、性能测试结果分析是否到位
  对于完成的性能测试结果,我们基本会使用图表形式来直观查看测试情况,并通过结果数据如CPU/MEM占用率,吞吐量,响应时间等来量化服务器资源消耗和系统性能。但我们更加需要去把握几个峰值或异常数据的节点,分析其产生的原因和当时的状况,然后给出自己建言和想法,帮助开发去进行性能调优。

  7、性能测试问题发现和总结
  其实不仅仅是性能测试,每次完成测试后对测试整个过程和产生的问题进行整理,并作总结,帮助下次测试时避免再发生相同的问题,是必须进行的步骤,也是成功测试的有效手段。

  8、所有过程是否文档化
  这个其实也不仅仅是性能测试,对于每次测试过程,无论功能、性能或者安全,都得文档化,通过产生记录、各阶段的测试准入、准出等,来辅助相关测试人员等进行工作。若有体系标准,如CMMI/ISO9001等,则更佳。

  以上大致列举了下性能测试及其成果度量时需要考虑的部分,通过周而复始的操作,比对前后性能测试过程与结果,这样可以不断改进和提高性能测试的质量。说大点可能考评自己性能测试是否高效、系统功能更优化的那些成果了。