性能测试-Loadrunner组件Controller一
Loadrunner应用之Controller
Loadrunner工具,通常看到的有三大核心组件,VuGen、Controller、Analysis,今天我们继续来聊一下,其中的一个核心组件:Controller。
我们做性能测试的时候,对被测系统,特别是web系统,做完了性能测试脚本开发之后,同时也应该考虑对性能测试脚本进行一些优化,比如,执行一系列的关联、参数化、检查点、集合点、事务等等,使得我们在执行性能测试实施的时候,能够获取更加真实的性能数据。那么,脚本录制和优化完成之后,是不是性能测试就完成了呢?应该说,脚本开发完成了,咱们的性能测试呢,万里长征才刚刚开始。后面的知识呢,会越来越重要,越来越难,而且不在单纯的依赖于工具本身的功能了。很多东西,其实是工具没法控制的,需要我们具体的一个经验,或者说我们本身对性能测试的理解,才能把后面的一些工作做好。那么,性能测试脚本的开发完成之后,脚本能把我们的请求发出去,这是VuGen需要去解决的问题。那么Controller又来解决什么问题呢?我们来梳理一下。
Controller,顾名思义,叫做控制器,所以它很多的功能都是控制部分的(见下图),比如说,它首先控制虚拟用户数量。我们要并发多少虚拟用户,需要在controller中设计。虽然我们前面说过,Loadrunner有三个核心组件,但是,还有另外一个,叫Load Generator--负载生成器, 一个更更重要的隐藏起来的一个核心组件,事实上,这个才是Loadrunner本身最核心的一部分。负载生成器用来模拟虚拟用户数的。如果说我们只有controller,而没有负载生成器,咱们使用Loadrunner也做不了性能测试。负载生成器这个专门的组件用来模拟虚拟用户,模拟多个线程,那么controller呢?它对负载生成器又有怎么样的一个控制呢,这个我们后面慢慢来说。
第二点,controller除了控制虚拟用户数和负载生成器,它还需要控制咱们的性能测试场景。例如,我们现在假设要模拟500个用户,那么到底这个500个用户以什么样的场景来把请求发给服务器,是500个用户逐渐增加,500个用户执行多长时间,以什么样的方式来释放这些用户等等,这些呢,都是controller里面控制的。

第三点,controller需要控制各种运行策略。例如,集合点功能,需要controller去控制。同样,比如咱们在执行性能测试的时候,考虑到,我们要去模拟用户的带宽。而通常情况下,我们都是在局域网内完成的性能测试的,带宽一般都是1000M,甚至更大的流量,都不是问题,但是真实用户在访问你的系统的时候,他的带宽能达到多少呢,现在主流的家庭主流带宽可能就是20m,50,100m,甚至有的还是5m,2m的,所以我们在做性能测试的时候,也需要去考虑用户的带宽问题,Loadrunner也支持这个功能(见下图),我们如果只用最大的带宽在局域网内部去测试,毫无疑问,带宽足够大,但实际上,就偏离了我们的另外一个对性能测试严格要求的这么一个条件,我们的要求相当于就放松了。而我们的loadrunner也可以控制这种各种各样的运行策略,从而达到模拟用户的真实行为。

另外,在controller里面,还有一些附属的功能,附属的功能主要提供了,各种指标的监控。我们在去做性能测试的时候,Loadrunner本身模拟的只是一个客户端,或者说很多个客户端向服务器发送请求,因此呢,它也只能是从客户端的角度来看待和审视这个系统的性能,如果说我们能在性能测试执行的过程中,又能通过LR监控到服务器端的,更有针对性的一些性能指标,那么就可以一方面从客户端的角度对系统有一个整体的掌握,同时咱们也可以对服务器端的更真实的性能指标有一个完全的把握,这样我们把客户端的指标和服务器端的指标结合起来进行相应地分析,我们才能对这个被测系统有一个更完整的掌控,然后对这个被测系统的分析才能更加的准确,虽然controller附属这种指标的监控的功能,并非controller的核心功能,但是呢,他对我们的性能测试实施,提供了一种方便。
上述只是对controller的功能做一个简单的概述,对它的总体功能有一个简单的了解,具体使用过程,待续...
性能测试-Loadrunner组件Controller一的更多相关文章
- 软件测试基础Ⅲ(osi7层协议,测试模型,LoadRunner组件,软件质量模型)
osi7层开放式系统互连网络模型 1.物理层:主要定义物理设备标准,如网线的接口类型.光纤的接口类型.各种传输介质的传输速率等.它的主要作用是传输比特流(就是由1.0转化为电流强弱来进行传输,到达目的 ...
- 老李分享:Eclipse中开发性能测试loadrunner脚本
老李分享:Eclipse中开发性能测试loadrunner脚本 前篇我分享了如何用loadrunner搭建javauser的性能测试脚本环境,本次我来告诉大家如何在eclipse开发loadrunne ...
- [性能测试] LoadRunner结果分析 – TPS(转)
[性能测试] LoadRunner结果分析 – TPS 针对吞吐率和 TPS 的关系,这个在结果分析中如何使用,就个人经验和朋友讨论后,提出如下建议指导,欢迎同僚指正. 相关定义 响应时间 = 网络响 ...
- loadrunner性能测试巧匠训练营-controller
1.设置集合点 现在脚本添加集合点的函数,集合点不能添加到事务里面,负责统计事务的时候会把时间计算进去 2.IP欺骗 前言 https://www.cnblogs.com/danbing/p/7459 ...
- Angular动态注册组件(controller,service...)
使用angular的场景一般是应用类网站 这也意味着会有很多的controller,service,directive等等 正常情况下我们要把这些内容一次性下载并注册,由于文件较多,对首次加载的效率影 ...
- 2017年3月23日 坚果性能测试Loadrunner 免费公开课
2017-03-23 坚果性能测试1群 607937164 我昨天看了一下飞扬老师的讲义PPT,真的很棒,BAT的专业性能老师果然是有好几把刷子,十分受教,相信周四的公开课一定会让大家收益颇丰的. ...
- LoadRunner性能测试-loadrunner工具破解
Loadrunner11破解 破解工具下载:http://pan.baidu.com/disk/home?errno=0&errmsg=Auth%20Login%20Sucess&&a ...
- LoadRunner性能测试-LoadRunner工具安装
Loadrunner11安装 1,在网上下载loadrunner11安装包 (百度可以下载安装包) 2,打开安装文件,点击setup.exe进行安装: 3,win10系统可能会出现如下问题: 提示管理 ...
- 性能测试Loadrunner与Mysql
1.库文件下载地址:http://files.cnblogs.com/files/xiaoxitest/MySQL_LoadRunner_libraries.zip 分别库文件和代码添加到Loadru ...
随机推荐
- deepin中crossover或playonlinux装完office后word无法输入中文的问题
原因:office安装是自带了一个微软输入法 解决:装offce时进行自定义安装,在office共享功能里,把输入法去掉. 参考: https://jingyan.baidu.com/article/ ...
- 用通俗的语言解释restful
实现了REST规范的Web API就叫RESTful API. 简单来说:就是用url定位资源,用http描述来操作资源. web是什么:分布式信息系统为超文本文件和其他对象(资源)提供访问入口. 资 ...
- AVAudioFoundation(1):使用 AVAsset
本文转自:AVAudioFoundation(1):使用 AVAsset | www.samirchen.com 本文主要内容来自 AVFoundation Programming Guide. 要了 ...
- [置顶] SNMPv3认证和加密过程
前面的一些文章详细讲解了SNMPv3的报文内容,下面主要的内容就是SNMPv3的加密和认证过程! USM的定义为实现以下功能: 鉴别 数据加密 密钥管理 时钟同步化 避免延时和重播攻击 1.UsmSe ...
- Python面试题目之打乱打乱有序列表
# 要求打乱一个有序列表 # 待处理列表 L1 = [11,22,33,44,55,66,77,] 方法: # 引入random模块,该模块的shuffle方法见下图 import random L1 ...
- POJ 3422 Kaka's Matrix Travels(拆点+最大费用流)题解
题意:小A从左上角走到右下角,每个格子都有一个价值,经过这个格子就把价值拿走,每次只能往下或往右走,问你走k次最多能拿多少价值的东西. 思路:这里有一个限制条件就是经过之后要把东西拿走,也就是每一格的 ...
- 51nod 1040 最大公约数的和 欧拉函数
1040 最大公约数之和 题目来源: rihkddd 基准时间限制:1 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 收藏 关注 给出一个n,求1-n这n个数,同n的最大公约数 ...
- 装完RHEL之后,活用CentOS的Repository
RHEL的Repository好像要帐号. 所以yum几乎就不能用了. 在 /etc/yum.repos.d 里新建个文件,就可以用CentOS的Repository了 [CentOS6] name= ...
- ZOJ-3962-数位dp
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5594 16进制下的数位dp,由于固定了位数,可以出现前 ...
- CF 160D Edges in MST 最小生成树的性质,寻桥,缩点,批量处理 难度:3
http://codeforces.com/problemset/problem/160/D 这道题要求哪条边存在于某个最小生成树中,哪条边不存在于最小生成树中,哪条边绝对存在于最小生成树中 明显桥边 ...