技术开发 频道

如何做好软件项目性能测试

【IT168技术分析评论】
  多数企业都想使产品获得高性能,以降低投产后的风险。但是现实中的性能测试工作却经常不受重视,常会碰到“走过场”或“拖到整个项目最后进行”的情况,甚至有时会作分舵无意义的性能测试。此外,多数企业的测试人员能力水平不高,这也是导致性能测试不过关的原因。

  要想做对性能测试应该从管理与技术两方面入手。

  按照规范的管理流程开展测试工作

  软件性能的低下很多时候是由于系统架构设计不好或代码效率低下而引起的,如果上线后发现性能问题往往已很难补救。因此性能测试应该按照规范的流程来执行,尽量把问题消灭在产品上线之前。

  根据多数企业的实际情况,性能测试应该分为开发与用户现场两个阶段来进行。

  严格的讲,性能测试应该按照测试环境的软、硬件配置高低分为两个阶段。只是由于开发阶段的软、硬件配置相对较低,而用户现场的投产环境软、硬件配置较高,因此才把性能测试分为开发与用户现场两个阶段。对于拥有先进实验设备甚至实验室的公司,完全可以在开发阶段完成全部的性能测试工作,如果用户现场仍要进行性能测试,则只是简单的验收测试而已。

  开发阶段的性能测试实施

  开发阶段的性能测试主要指软件试运行前的性能测试,即团队内部的性能测试。这一阶段测试时一个反复迭代的过程。

  性能测试不是特别重要的项目,这一阶段的性能测试较多关注与软件功能而引起的缺陷。因此主要进行用户并发性能测试,即核心模块并发用户测试与组合模块并发用户测试。此外,可能还会进行一些预期性能指标的性能测试。通过开发阶段的性能测试可以发现一些核心算法问题,最大限度地排除由软件本身引起的问题。

  对于系统类软件或特殊应用系统的性能测试,解决其性能问题可能很耗时,所以应该较早的组织硬件资源进行各类性能测试,例如疲劳强度与大数据量测试、服务器性能测试等。

  用户现场性能测试的实施

  用户现场的性能测试有验收测试的“味道”,是开发阶段性能测试工作的延续。这一阶段的性能重点是关注性能测试的整体表现。

  对于系统软件和特殊领域的应用系统,这一阶段的性能测试主要包含预期指标性能测试、并发用户性能测试、各类服务器性能测试、疲劳强度与大数据量性能测试等内容,基本覆盖了“全面性能测试模型”的各个方面。与开发阶段的性能测试相比,本阶段的性能测试用例数量可能会少一些,但是测试用例覆盖的范围与开发阶段的性能测试基本一致。

  一般应用系统在用户现场的性能测试通常包含预期指标性能测试与用户并发性能测试,可能也会对服务器进行一定的测试,不过内容通常比较简单。一般应用系统发生性能问题的风险不会太高,因此只要通过验收测试即可。

  这两个阶段的性能测试都应该按照“需求分析-规划与设计-执行-调优-验证”的顺序来执行。

0
相关文章