转:Jmeter 用户思考时间(User think time),定时器,和代理服务器(proxy server)...

在负载测试中需要考虑的的一个重要要素是思考时间(think time), 也就是在两次成功的访问请求之间的暂停时间。 有多种情形挥发导致延迟的发生: 用户需要时间阅读文字内容,或者填表,或者查找正确的链接等。未认真考虑思考时间经常会导致测试结果的失真。例如,估计数值不恰当,也就是被测系统可以支持的最多用户量(并发用户)看起来好像要少一些等。 

  Jmeter提供了一整套的计时器(timer)来模拟思考时间(think time), 但是仍旧存在一个问题:: 如何确定适当的思考时间呢?幸运的是, JMeter 提供了一个不错的答案:使用 JMeter HTTP 代理服务器(Proxy Server)元件。
 

  代理服务器会记录在使用一个普通的浏览器(如FireFox 或 Internet Explorer)浏览一个web应用时的操作。 另外, JMeter 在记录操作的同时会建立一个测试计划(test plan)。这个功能能提供以下便利:
 

  不必手工建立HTTP 访问请求, 尤其是当要设置一些令人乏味的参数时(然而,非英文的参数也许不能正常工作) 。JMeter 将会录制包括隐含字段(hidden fields)在内的所有内容。
 

  在生成的测试计划中,Jmeter会包含浏览器生成的所有的 HTTP 报头,如User-Agent (e。g。, Mozilla/4。0), 或AcceptLanguage (e。g。, zh-tw,en-us;q=0。7,zh-cn;q=0。3)等。
 

  JMeter 会根据设置在录制操作的同时建立一些定时器,其延迟时间是完全根据真实的操作来设置的

现在让我们来看一下如何配置Jmeter的录制功能。 在JMeter 的控制台上, 在工作台(WorkBench)元件上单击右键,然后选择”add the HTTP Proxy Server “。 注意是在WorkBench 上单击右键而不是在Test Plan上, 因为现在是要为记录操作进行配置而不是要运行测试计划。  HTTP Proxy Server 的实现原理就是通过配置浏览器的代理服务器而使所有的访问请求通过JMeter发送(,因而被Jmeter把访问过程录制下来)。 

  如图3所示, HTTP代理服务器(HTTP Proxy Server)元件的一些参数必须被配置


  端口(port): 代理服务器的监听端口
 

  目标控制器(Target Controller): 是代理用于存储生成的数据的控制器,默认情况下,, JMeter 将会在当前的测试计划中找一个记录用的控制器用于存储,此外也可以在下拉菜单中选择任意控制起来存储,通常默认值就可以了。
 

  分组(Grouping): 确定在测试计划中如何来为生成的元件分组。 有多个选项, 一般可以选择“只存储每个组的第一个样本”,否则,将会原样录制URLs,包括包含图像和JavaScripts脚本的页面。当然 也可以尝试一下默认值“不对样本分组”("Do not group samples"),来看一下JMeter 建立的原版的测试计划。
 

  包含模式(Patterns to Include) 和 排除模式(Patterns to Exclude) :帮助过滤一些不需要的访问请求。
\

  图 3。 JMeter 代理服务器(Proxy Server)。

  当你点击开始(Start)按钮时,代理服务器就会开始记录所接受的HTTP 访问请求。 当然,在开始记录前,要首先设置好浏览器的代理服务器设置。在代理服务器元件中可以增加一个定时器子元件(配置元件),用于告知Jmeter来在其生成的HTTP请求中自动的增加一个定时器。Jmeter会自动把实际的延迟时间存储为一个被命名为T的Jmeter变量,因此,如果在代理服务器元件里使用了高斯随机定时器,就应该在其中的固定延迟偏移(Constant Delay Offset)设置项里添上${T}(用于自动引用纪录的延迟时间),如图4所示。这是另一个节省时间的便利特性。
\ 

  图 4。 在代理服务器组建中增加一个高斯随机定时器 


  定时器将会使相应的的取样器被延迟。 延时的规则是,在上一个访问请求被响应并延时了指定的时间后,下一个被定时器影响的取样访问请求才会被发送出去。因此, 你必须手工删除第一个取样器中自动生成的定时器,因为第一个取样器不需要定时器。
 

  在启动HTTP代理服务器以前,要在测试计划中增加一个线程组(thread group),在线程组中增加一个录制控制器(recording controller)用于存储生成的结果。 否则, 生成的元件将会被直接添加到工作台里。另外, 在录制控制器里增加一个HTTP请求默认值元件HTTP Request Defaults 元件 (是一个配置元件) 也很重要,这样Jmeter就不填写使用了默认值的字段。
 

  录制完成后, 停止HTTP 代理服务器; 在录制控制器元件上单击右键将记录的元件保存为一个文件用于以后重用,另外,不要忘了恢复浏览器的代理服务器设置。 
 

转载于:https://www.cnblogs.com/lci05/p/4784784.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/458924.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux sql语句传参数,Linux/Unixshell参数传递到SQL脚本

在数据库运维的过程中,Shell 脚本在很大程度上为运维提供了极大的便利性。而shell 脚本参数作为变量传递给SQL以及SQL脚本也是DB在数据库运维的过程中,Shell 脚本在很大程度上为运维提供了极大的便利性。而shell 脚本参数作为变量传递给SQL以及SQL脚本也…

Myeclipse5.5获取注册码

2019独角兽企业重金招聘Python工程师标准>>> import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class MyEclipseGen {private static final String LL "Decompiling this copyrighted software is a vi…

对互联网中常见地图的坐标系探讨

文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/。 1.背景 目前项目中使用百度地图、高德地图、谷歌中国地图、天地图的需求越来越多,这里我跟大家一起对各地图使用的坐标系做一个简单的探讨。…

讯飞输入法有没有Linux,Debian testing 安装讯飞输入法 - Linux系统与应用 - LinuxApp - 水木社区...

突然发现Deepin发行版带有讯飞输入法,于是折腾了一会,安装好了这个输入法,现把安装过程分享如下:软件包的依赖:Package: iflyimeVersion: 0.9.962Section: develPriority: optionalArchitecture: amd64Depends: libboo…

HTTP必知必会

2019独角兽企业重金招聘Python工程师标准>>> HTTP消息HTTP请求消息HTTP响应消息消息首行请求行响应行消息头部请求头请求头消息正文请求正文响应正文Web服务器把接收到的HTTP请求消息封装成request对象,作为service的参数传入service函数,ser…

更新10_linux,时隔十年,QQ更新了Linux版本

昨天1024程序员节,QQ悄悄地更新了QQ for Linux,也许是给各位一个惊喜吧。官网及其的简陋。和一个Word文档似的。十年一更,有网友称,瞬间回到QQ2006,确实界面功能有些落后,相信QQ可以跟上潮流的,…

C语言里if语句变量作为判断条件,C语言教学(九-上)if else判断语句

原标题:C语言教学(九-上)if else判断语句今天讲if else判断语句,简单理解就是进行条件判断,如果条件达到则执行if 里或else里的语句。先来看if。if的写法和for差不多,就是不用括号里的两个分号,if (条件) { },if加括号…

二维数组联通子数组和最大

题目要求: 返回一个二维整数数组中最大联通子数组的和。输入一个二维整形数组,数组里有正数也有负数。文件输出。思路:和之前的动态规划相识,把二维数组转换为一维数组,先求每一个列的子数组和最大,最后在用正数就加&a…

Win10 IIS本地部署网站运行时图片和样式不正常?

后期会在博客首发更新:http://dnt.dkill.net 异常处理汇总-服 务 器 http://www.cnblogs.com/dunitian/p/4522983.html 启用关闭win功能,开启一下静态内容 收工~

设置IIS会话过期时间

打开默认网站----双击ASP--展开会话属性---更改超时时间-转载于:https://www.cnblogs.com/genesis/p/4816128.html

WWDC 2013 Session笔记 - iOS7中弹簧式列表的制作

这是我的WWDC2013系列笔记中的一篇,完整的笔记列表请参看这篇总览。本文仅作为个人记录使用,也欢迎在许可协议范围内转载或使用,但是还烦请保留原文链接,谢谢您的理解合作。如果您觉得本站对您能有帮助,您可以使用RSS或…

H5学习之旅-H5列表(8)

列表的基本语法 ol:有序列表 ul:无序列表 li:列表项 dl:列表 dt:列表项 dd:列表描述 常用列表 1.无序列表:使用标签 ul,li 属性:disc(默认实心圆)…

c语言中用文件处理数据,C语言文件处理 -C语言从文件中读写格式化数据

从图 1 所示的文件 fin.txt 中读取学生姓名、身高和体重,计算并显示它们的平均值,并且将显示结果保存到文件 fout.txt 中。图 1:输入输出文件示例C语言代码清单 1:读取学生姓名、身高和体重,计算并显示它们的平均值#in…

三星+android+7.0+自动纠正单词,升级党必看!三星S/Note系列更新Android 7.0指南

上周,雷科技(微信ID:leitech)曾为大家提供了一份Android 7.0升级预测名单。现在为了增加针对性,这次笔者就以三星最热门的两大旗舰S和Note系列为例,给大家提供一个全方面的更新指南。截至目前,三星S系列和Note系列的正…

互联网年鉴

最近互联网行业,有一个词说的比较多了,“资本寒冬”。作为,一个在这个行业里干的人,真心是好怕怕呢。 妈蛋,真怕哪天就突然失业了呀。所以,无聊的(操蛋的)去整理了一些98年开始一直到现在的互联网中一些自己…

android oreo 开机动画,Android O添加了一个 Splash Screen API帮助简化启动屏制作

大多数开发者对闪屏(splash screen)都持不同的态度。一些人支持用闪屏隐藏app的加载,然后自然过渡到主界面,而另一些人认为闪屏不管是对用户还是开发者都是浪费时间。谷歌在这个问题上的立场也是不一的,以前不推荐使用闪屏的使用,…

拼接SQL的一个技巧

2019独角兽企业重金招聘Python工程师标准>>> 为了避免判断是否要在字符串中加 AND 来连接查询条件,我们可以直接在在WHERE 后面写 id>0。 这样,我们在拼接条件的时候,就可以直接写 AND 了。 SELECT* FROM t_table WHEREid>0…

【Linux导论】Linux引导流程(The Boot Process)

原文 LFS101x.2 Introduction to Linux (Linux Foundation) Chapter 03: Linux Structure and Installation - Section 2: The Boot Process 引导流程 - (The Boot Process) 你是否想过,在你按下电源开关直至Linux登陆提示出现时,后台到底发生了哪些事&a…

计算一行文本的高度

计算一行文本的高度 说明 有时候我们需要知道指定的几行文本的高度,此工具用于解决此种问题。 源码 // // NSStringLabelWidthAndHeight.h // ZiPeiYi // // Created by YouXianMing on 15/12/9. // Copyright © 2015年 YouXianMing. All rights reserved.…

用fputc()函数以字符串形式写入字符到磁盘文件

2019独角兽企业重金招聘Python工程师标准>>> #include <stdio.h> #include <stdlib.h>int main(){FILE *fp;char ch;if((fpfopen("testfile", "a")) NULL){fprintf(stderr, "Error opening file.\n",fp);exit(1);}print…