1、性能测试步骤一、 测试需求分析1、 选定测试业务场景根据用户需求中所描述的系统架构来分析,性能测试的重点表现在哪几个方面,如:并发访问的性能、数据交换的性能、批处理业务执行效率、系统处理的稳定性等,同时结合系统架构分析可能存在的性能瓶颈,这个也是选择测试业务场景的基础。根据用户需求并结合实际,不要做到全部业务覆盖,但尽量做到对不同业务类型和操作类型的覆盖,操作类型的覆盖,如;对数据库的读操作(简单查询、复杂查询) 、数据库的写操作(如:插入、删除和更新) ,选取一些典型的业务操作作为测试业务场景。2、 分析性能测试指标1)根据用户需求和所选取的典型业务场景,首先选取性能指标项,如:并发用户数、
2、交易响应时间、每秒交易数(TPS) 、服务器资源占用率、网络吞吐量等;2)在选取性能指标项后,根据用户需求或总体设计文档对性能指标进行分析,获得各个性能指标项值,如:用户需求中说明了某个业务使用的用户数为 N,但没有说明并发用户数,可以按照 10%N20%N 来谁都能够并发用户数;有的文档中会提到一年会处理多少业务量,那么可以按照 28 原则计算出每秒交易数(TPS) 。二、准备工作1、测试环境搭建测试环境要尽量与系统运行的真实环境大致一致,也有一些要求:1)测试环境时尽可能的模拟系统上线运行环境搭建测试环境时应充分考虑用户的使用环境,尽可能模拟用户实际使用的软硬件环境,这对性能测试来讲尤为重
3、要,如果生产环境和测试环境相差过大,则测试结果没有参考价值。要求被测系统的硬件配置应与生产部署一致,所安装的软件版本与预期测试的版本号一致。2)营造独立的测试环境被测系统在预期性能测试执行期间应保证其资源独占性,即测试过程中要确保我们的测试环境独立,避免测试环境被占用,影响测试进度及测试结果,比如设备连网后,如果其他开发组或测试组也在共用,这样就可能影响我们的测试结果。有时开发人员为确定问题会使用我们的测试环境,这样会打乱我们的测试活动,更严重的是影响测试进度。因此需要为本次测试搭建独立的测试环境。3)构建可复用的测试环境项目实际执行过程中,测试环境是经常变化,比如测试软件版本更新、测试人员流
4、失等等,需要随时跟踪和改进,尽量将可控的资源进行分类整理。可控资源包括:测试环境配置手册、测试硬件信息、环境变更记录等等,目的是尽量将测试环境进行备份,方便出现未知问题时快速的还原。当刚搭建好测试环境,安装测试软件之前及测试过程中,对操作系统及测试环境进行备份是必要的,这样一来可以为我们下轮测试时直接恢复测试环境,避免重新搭建测试环境花费时间,二来在当测试环境遭到破坏时,可以恢复测试环境,避免测试数据丢失,重现问题。2、测试数据准备在实施性能测试时,需要运行系统相关业务,这时需要一些数据支持才可运行业务,这部分数据即为初始测试数据,数据准备和清理的工作量是非常大的,需要在测试前提前考虑。为更加
5、真实的模拟现实运行环境,我们在测试过程中,应尽可能准备与真实业务执行相一致的初始数据,如系统用户数据、业务数据、辅助数据等。1) 系统用户数据:登陆系统使用的帐户名-口令等,数量与虚拟用户数一致;2) 业务数据:每个虚拟用户模拟真实用户进行操作时使用到的数据;3) 辅助数据:为保证业务操作的正常进行而设置的基本信息资料。此外,测试数据可分可重用和不可重用数据:4) 可重用数据:如客户信息等查询类的数据,此类数据只需一次准备即可;5) 不可重用数据:此类数据为一次性消耗数据,不可重用,一般应用在数据增加或修改类业务交易,此类数据如增加客户标识、帐户标识等。6) 3、测试环境配置1)RPC 服务。
6、监控服务器资源利用率需要打开系统 RPC 服务,RPC 打开步骤参考详见监控配置文档 。2)Agent process。该服务是 loadrunner 的服务,它的作用是实现控制多台机器同时进行并发,安装了 loadrunner 的每台机器都会有该服务,只要打开该服务,然后在 loadrunner 的控制台的 Load generator 中加入打开该服务的机器的 IP 地址即可。3)监控服务器资源利用率。在 Loadrunner controller 中加入所要监控服务器,选择监控的性能指标。三、录制和调试脚本录制和调试脚本可以具体参见其他的资料,不过要注意静态关联和动态关联的问题。四、执行脚本将所录制和调试好的加入到 Loadrunner controller 控制台中,设置好测试场景,如:并发用户数、调度和运行模式(真实运行模式还是经典模式、虚拟用户加载方式、运行周期)等。五、分析测试结果执行完脚本后,可以点开 Loadrunner Analysis 获得执行脚本过程中,所收集的性能指标值的分析报告,可以通过分析报告中数据,写测试报告,同时也可以分析性能瓶颈,得出建议优化措施。