1.Loadrunner的组成部分

·脚本生成器VuGen:virtual user generator

·压力控制器Controller,License主要在这里控制

·结果分析软件Analysis

·压力机Load Generator

2.其它性能测试工具

·Borland SilkPerformer

·QA Load

·Web Load

·Open STA

·JMeter

3.Loadrunner基本操作

安装破解汉化(链接:http://pan.baidu.com/s/1o8lGoPk 密码:uvvh)

录制脚本

①启动Virtual User Generator

②新建脚本(Ctrl+N)->选择协议类型->确认

出现三个函数,vuser_init和vuser_end各执行一次,Action可以多次执行

③点击开始录制,选择录制的浏览器,默认为IE,填写被测url,以及导入到什么操作里,点击确定后,会启动录制程序,并打开浏览器并打开url

在录制这一步上,之前在win7 64位上总是录制不到事件,也无法打开IE,用了很多方法都不行,后来装了个windows server 2008,上面是IE8就可以成功录制了。

④录制的脚本在Action函数中

Action()
{ web_url("favicon.ico",
"URL=http://www.bing.com/favicon.ico",
"Resource=1",
"RecContentType=image/x-icon",
"Referer=",
"Snapshot=t1.inf",
LAST); web_add_cookie("BAIDUID=7BFDC3B97F844D512BA9759F19317FAC:FG=1; DOMAIN=www.baidu.com"); web_add_cookie("BIDUPSID=7BFDC3B97F844D512BA9759F19317FAC; DOMAIN=www.baidu.com"); web_add_cookie("PSTM=1462951964; DOMAIN=www.baidu.com"); web_add_cookie("BD_UPN=1123314351; DOMAIN=www.baidu.com"); web_add_cookie("H_PS_645EC=ac59CTigDukXpe0OX%2FqZdRFSrQ05O3tj5cuUVvpdmqQhtoq92BQaoUJ86HM; DOMAIN=www.baidu.com"); lr_think_time(); web_url("www.baidu.com",
"URL=http://www.baidu.com/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t2.inf",
"Mode=HTML",
EXTRARES,
"Url=https://ss1.bdstatic.com/5eN1bjq8AAUYm2zgoY3K/r/www/cache/static/protocol/https/home/img/qrcode/zbios_62c636fe.png", "Referer=https://www.baidu.com/", ENDITEM,
"Url=https://ss1.bdstatic.com/5eN1bjq8AAUYm2zgoY3K/r/www/cache/static/protocol/https/home/img/qrcode/nuomi_510f7472.png", "Referer=https://www.baidu.com/", ENDITEM,
"Url=https://ss1.bdstatic.com/5eN1bjq8AAUYm2zgoY3K/r/www/cache/static/protocol/https/global/js/all_async_search_6305f449.js", "Referer=https://www.baidu.com/", ENDITEM,
"Url=https://ss1.bdstatic.com/5eN1bjq8AAUYm2zgoY3K/r/www/cache/static/protocol/https/global/img/icons_0e814c16.png", "Referer=https://www.baidu.com/", ENDITEM,
"Url=https://ss1.bdstatic.com/5eN1bjq8AAUYm2zgoY3K/r/www/cache/static/protocol/https/plugins/every_cookie_aa168cb4.js", "Referer=https://www.baidu.com/", ENDITEM,
"Url=https://ss1.bdstatic.com/5eN1bjq8AAUYm2zgoY3K/r/www/cache/static/protocol/https/home/js/nu_instant_search_ebeb5baa.js", "Referer=https://www.baidu.com/", ENDITEM,
"Url=https://ss1.bdstatic.com/5eN1bjq8AAUYm2zgoY3K/r/www/cache/static/protocol/https/global/img/quickdelete_9c14b01a.png", "Referer=https://www.baidu.com/", ENDITEM,
"Url=https://ss1.bdstatic.com/5eN1bjq8AAUYm2zgoY3K/r/www/cache/static/protocol/https/sug/js/bdsug_async_dac7ea02.js", "Referer=https://www.baidu.com/", ENDITEM,
"Url=https://www.baidu.com/his?wd=&from=pc_web&rf=3&hisdata=%5B%7B%22time%22%3A1462952066%2C%22kw%22%3A%22.net%20framework%20v3.5%20sp1%22%7D%5D&json=1&p=3&sid=18880_1426_19838_13549_19805_19558_19807_19842_19901_17001_15280_11493&csor=0&cb=jQuery110207410042058234716_1462953976744&_=1462953976745", "Referer=https://www.baidu.com/", ENDITEM,
"Url=https://ss1.bdstatic.com/5eN1bjq8AAUYm2zgoY3K/r/www/cache/static/protocol/https/baiduia/baiduia_b45d552b.js", "Referer=https://www.baidu.com/", ENDITEM,
LAST); return ;
}

注:在recording log中可以查看记录的发包细节,如下图所示

⑤接下来我们可以Ctrl+s保存该脚本,并且点击F5或者运行图标进行回放脚本(该脚本模拟浏览器向后台发送请求),回放的脚本会产生回放日志。点击视图->测试结果可以查看运行结果,如下图所示,测试通过

apache服务器检查是否存在发包请求:

进入apache根目录下logs目录,tail -f access_log,检查最新的收发包情况

压力控制

保存好录制好的脚本后,且脚本运行通过没有问题,之后关闭Virtual User Generator,打开Controller,跳出选择框,左侧显示了当前的可用脚本,之前我们保存了一个进入百度首页的脚本,此处我们选择这个脚本添加到右侧,点击确定(此处最好取消掉使用百分比模式在脚本间分配Vuser)

确定后的页面如下:

该页面左上角一块列出了加压场景,可以选择脚本和并发人数,左下角设定加压方式,设定用户上线间隔和下线间隔以及持续时间,右侧的压力图是对左侧的解释

设定好相关选项后,点击运行(Run),在接下来的界面点击开始场景(start scenario),运行过程中,每张图表示不同的含义,下图为运行结束后的页面显示

上图左侧的可用图下的选项可拖拽到右侧的空白位置,我选择把吞吐量显示出来,如下图。每张图标可以双击放大

之后,我们点击菜单栏的结果(R)->分析结果,即直接进入了Analysis分析测试结果数据。

注:平均事务响应时间为最重要的参数,直接影响用户体验

具体的分析在接下来进一步学习

性能测试学习第四天_Loadrunner概述的更多相关文章

  1. 性能测试学习第五天_loadrunner概述

    1.为什么要进行性能测试(性能测试贯穿于软件生命周期) The failure of a mission-critical application can be costly. Assure perf ...

  2. 性能测试学习第四天-----loadrunner:jdbc批量制造测试数据 & controller应用

    Javavuser协议 1.过程概述:在eclipse中用java编写sql执行脚本,复制到lr中,调整后通过参数化迭代批量制造测试数据: 2.步骤: 1).在eclipse中新建java proje ...

  3. Java NIO 学习笔记(一)----概述,Channel/Buffer

    目录: Java NIO 学习笔记(一)----概述,Channel/Buffer Java NIO 学习笔记(二)----聚集和分散,通道到通道 Java NIO 学习笔记(三)----Select ...

  4. 从零开始学习jQuery (四) 使用jQuery操作元素的属性与样式

    本系列文章导航 从零开始学习jQuery (四) 使用jQuery操作元素的属性与样式 一.摘要 本篇文章讲解如何使用jQuery获取和操作元素的属性和CSS样式. 其中DOM属性和元素属性的区分值得 ...

  5. 前端学习 第四弹: HTML(一)

    前端学习 第四弹: HTML(一) 元素分类:块元素 内联元素 块级元素在浏览器显示时,通常会以新行来开始(和结束). 例子:<h1>, <p>, <ul>, &l ...

  6. C#可扩展编程之MEF学习笔记(四):见证奇迹的时刻

    前面三篇讲了MEF的基础和基本到导入导出方法,下面就是见证MEF真正魅力所在的时刻.如果没有看过前面的文章,请到我的博客首页查看. 前面我们都是在一个项目中写了一个类来测试的,但实际开发中,我们往往要 ...

  7. 性能测试学习之三—— PV->TPS转换模型&TPS波动模型

    PV->TPS转换模型 由上一篇“性能测试学习之二 ——性能测试模型(PV计算模型)“ 得知 TPS = ( (80%*总PV)/(24*60*60*(T/24)))/服务器数量 转换需要注意: ...

  8. Android Animation学习(四) ApiDemos解析:多属性动画

    Android Animation学习(四) ApiDemos解析:多属性动画 如果想同时改变多个属性,根据前面所学的,比较显而易见的一种思路是构造多个对象Animator , ( Animator可 ...

  9. 五、Android学习第四天补充——Android的常用控件(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 五.Android学习第四天补充——Android的常用控件 熟悉常用的A ...

随机推荐

  1. C语言学习笔记--void关键字

    1.C语言中Void关键字的含义 void 修饰函数返回值和参数——为了表示“无”,如果函数没有返回值,那么应该将其声明为 void,同样的,如果函数没有参数,也应该声明其参数为 void //f() ...

  2. sharepoint 2013 创建母版页

    一.创建新的母版页, 并添加了新的样式表 1.从CodePlex 上获得Starter Master Pages for SharePoint 2010 或复制以下母版代码 <%@Master  ...

  3. ubuntu使用root权限登录的设置方法

    Ubuntu系统默认是不允许用户以root身份登录的,在网上找到的方法如下: 1.首先设置root密码,利用现有管理员帐户登陆Ubuntu,在终端执行命令:sudo passwd root,接着输入密 ...

  4. python处理大文件——文件流处理

    最近处理一份1000G+的大文件,直接loading进内存不可能,只能分片读取.文件介绍如下: 该文件是一份压缩的比对后文件(sam文件),该文件由很多细小的结构单元组成,一个结构如下: 两种方法: ...

  5. jmeter响应结果乱码问题

    问题分析 当响应数据或响应页面没有设置编码时,jmeter会按照jmeter.properties文件中,sampleresult.default.encoding设置的格式解析 默认ISO-8859 ...

  6. 6.JBoss5.x6.x 反序列化漏洞(CVE-2017-12149)复现

    2017 年 9 月 14 日,国家信息安全漏洞共享平台( CNVD )收录了 JBOSS Application Server 反序列化命令执行漏洞( CNVD-2017-33724,对应 CVE- ...

  7. BerkeleyDB原理及其对应API

    BerkeleyDB(简称为BDB)是一种以key-value为结构的嵌入式数据库引擎: 嵌入式:bdb提供了一系列应用程序接口(API),调用这些接口很简单,应用程序和bdb所提供的库一起编译/链接 ...

  8. hdu1081

    #include<iostream> using namespace std; int GetMaxNum(int a[],int n) //求最大字段和 { int i,sum=0,ma ...

  9. 递归实现从n个数中选r个数的组合数

    #include <stdio.h> #include <stdlib.h> ], count; void comb(int m, int k) { int i, j; for ...

  10. PHP现阶段发现的不足点

    1.php测试单元的实现(参考文档:https://blog.csdn.net/weixin_41282397/article/details/85052015)