的原理很简单,用多线程或多进程的方式向服务器端发送大量的数据包,同时接收服务器的返回结果。举个例子:用户注册的,打开注册页,输入注册信息,然后提交,对于性能测试而言注册信息的收入过程LoadRunner并不会进行记录,当提交时客户端向服务器端发送请求,这个才是LoadRunner真正关心的内容。
性能测试的基本流程:
建立测试计划 -> 制作测试脚本 -> 设定测试场景 -> 运行测试场景 -> 监视测试场景 -> 分析测试结果
制作测试脚本:制作一系列的操作动作,以B/S结构为例我们要告诉我们需要打开哪些链接,输入哪些数据。
设计测试场景:是标明制作好的脚本应该如何运行,要多少个虚拟用户?虚拟用户如何运行?运行多少时间?
监视测试场景:是指在测试运行过程中对指定服务器的性能进行监视,监控数据用于后期的数据分析。
分析结果:从数据中找出性能瓶颈。
在LoadRunner中分别不同的工具对应测试流程中的每一步。
制作测试脚本-----VirtualUserGenerator
设定测试场景-----Controller
运行测试场景-----Controller
监视测试场景------Controller
分析测试结果------Analysis
虚拟用户生成器 (VuGen) — 创建脚本VuGen:通过录制应用程序中典型最终用户执行的操作来生成虚拟用户 (Vuser)。VuGen 将这些操作录制到自动虚拟用户脚本中,以便作为负载测试的基础。 VuGen 中的脚本分为三部分:vuser_init、vuser_end 和Action。其中vuser_init 和vuser_end 都只能存在一个,不能再分割,而Action 还可以分成无数多个部分(通过点击New 按钮,新建ActionXXX)。
Mercury LoadRunner Controller — 设计和运行场景:Controller 是用来创建、管理和监控负载测试的中央控制台。使用 Controller 可以运行用来模拟真实用户执行的操作的脚本,并可以通过让多个 Vuser (虚拟用户)同时执行这些操作来在系统中创建负载。
Mercury Analysis — 分析场景:Mercury Analysis 提供包含深入的性能分析信息的图和报告。使用这些图和 报告,可以标识和确定应用程序中的瓶颈,并确定需要对系统进行哪些更改来提高系统性能。
另外,
B/S系统,选择Web(Http/Html),
测一个C/S系统,根据C/S结构所用到的后台来选择不同的协议,如果后台数据库是sybase,则采用sybaseCTlib协议,如果是sql server,则使用MS sql server的协议,至于 数据库系统,当然就使用oracle 2-tier协议。
对于没有数据库的c/s(ftp,smtp)这些可以选择windwos Sockets协议。
至于的ERP,EJB(需要ejbdetector.jar),选择相应的协议即可.
文章来源于领测软件测试网 https://www.ltesting.net/