jmeter打开java脚本 脚本怎么打标签

编写Jmeter接口测试脚本
利用Fiddler抓包APP应用接口,在Jmeter编写接口测试脚本
1.用Fiddler对Android用用进行抓包
Fiddler介绍:
Fiddler是一款非常流行并且实用的http抓包工具,它的原理是在本机开启了一个http的代理服务器,然后它会转发所有的http请求和响应。不仅如此,它还可以支持请求重放等一些高级功能。显然它是可以支持对手机应用进行http抓包的。
下面就来介绍下如何用fiddler对手机应用来抓包。
1.启动Fiddler,打开菜单栏中的
Tools & Fiddler Options,打开“Fiddler Options”对话框。
2.在Fiddler
Options”对话框切换到“Connections”选项卡,然后勾选“Allow romote computers to
connect”后面的复选框,然后点击“OK”按钮。
设置完成后必须重启一次Fiddler!!
3.在本机命令行输入:ipconfig,找到本机的ip地址。
4.打开android设备的“设置”-&“WLAN”,找到你要连接的网络,在上面长按,然后选择“修改网络”,弹出网络设置对话框,然后勾选“显示高级选项”。
在“代理”后面的输入框选择“手动”,在“主机名”后面的输入框输入电脑的ip地址,在“端口”后面的输入框输入8888,然后点击“确定”按钮。
  注:首先,确保安装
Fiddler 的电脑和你的手机在同一局域网内,因为Fiddler只是一个代理,需要将手机的代理指向 PC
机,不能互相访问是不行的。
然后启动Android设备中的HTTP请求,就可以在Fiddler中看到完成的请求和响应数据。
2.在Jmeter编写接口测试脚本
用"言味"这个APP来测试
1.清空Fiddler无用接口信息 &
操作APP登录言味,Fiddler拿到的登录接口复制到Jmeter
注:如果该接口类型是POST,那么TextView里的信息也要拿到Jmeter
1)Fiddler的Headers信息填到Jmeter的HTTP请求路径内
2)Fiddler的TextView信息填到Body
3)跑一下该HTTP请求是否成功
2.成功拿到该接口数据后,我们需要把“openld”的数据用正则表达式取到,用该变量来完成接下来的获取接口操作
注:正则表达式:用于将需要的数据提取出来
注:引用名称:代表下一个请求要引用的参数名称,如填写“openid”,那么则可用“${openid}”引用它。
&正则表达式:():括起来的部分就是要取的
& & . :匹配任何字符
& & +:一次或多次
& & ?:在找到第一个匹配项后停止
模板:用$$引起来,$2$表示取第2个值给openid
匹配:0代表随机取值,1代表取全部值
缺省值:如果参数没有取到值,那就默认给它一个值
3.操作言味APP获取栏目列表,然后在FIddler拿到该接口复制到Jmeter的HTTP请求中
4.将该接口拿到Jmeter后,需要用前面设置的正则表达式的变量替换掉重复的值
然后再下面都是这种重复操作,(操作APP给Fiddler拿到接口,将接口复制到Jmeter,需要设置正则表达式的地方设置则表达式,需要注意接口方法GET和POST的区别)。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。Jmeter接口自动化测试时,为脚本添加一个写入日志的后置处理器
1. 在测试计划下(根节点)添加一个BeanShell后置处理器。2. 在Script中写入以下语句。log.info()是写入日志,prev.getXXXX()方法是获取各项Jmeter的运行时的参数。public void writeToLog(){
String logInfo = "\n";
//线程组名 + 采样器名称
logInfo = logInfo + prev.getThreadName() + " " +
prev.getSampleLabel() + "\n";
//请求内容,如果仅需要url的话,可以使用prev.getUrlAsString()方法
logInfo = logInfo + prev.getSamplerData() + "\n";
//响应状态码
logInfo = logInfo + prev.getResponseCode() + "\n\n";
//响应内容
logInfo = logInfo + prev.getResponseDataAsString() + "\n";
//写入日志
log.info(logInfo);
writeToLog();3. 运行你的脚本,点击右上角的警示图标就可以看到日志框里的日志信息了。主要打印了1.采样器名 2.请求 3.状态码 4.响应4. 非GUI模式运行脚本,会在.jmx脚本文件所在路径生成Jmeter.log文件5. Beanshell后置处理器中的语句,输出内容大致如下。6. 该方法作为调试脚本和测试过程查看日志都起到很好的帮助。最主要是简洁,通用。相应的,性能测试不建议添加,会影响客户机的性能影响测试结果准确性。*更新一个目前一直在用的BeanShell断言,效果是不符合预期才写入日志。在跑性能时,也可以开启,方便查找原因。(bsh.args[]是BeanShell组件中参数文本框中填写的,ifInclude()是一个自己jar包中的判断方法)import com.tomoya.jmeter.*;
//获取响应结果
String source = prev.getResponseDataAsString();
//断言文本
String str1 = bsh.args[0];
String str2 = bsh.args[1];
//判断是否相同
if(Tool.ifInclude(source, str1) || Tool.ifInclude(source, str2)){
FailureMessage = "正确";
FailureMessage = "接口响应:\r\n" +
String logInfo = "\n";
logInfo = logInfo + prev.getThreadName() + " " +
prev.getSampleLabel() + "\n";
logInfo = logInfo + prev.getSamplerData() + "\n";
logInfo = logInfo + prev.getResponseCode() + "\n\n";
logInfo = logInfo + prev.getResponseDataAsString() + "\n";
log.info(logInfo);
* 判断一个字符串中,是否包含另一个字符串。
* @param Source
源字符串 例aabca
* @param str
判断字符串 例abc
* @return true包含 false不包含
public static boolean ifInclude(String Source, String str) {
boolean ifInclude =
if (Source.indexOf(str) != -1) {
ifInclude =
ifInclude =
return ifI
BeanShell常用内置类和方法:
log:写入信息到jmeber.log文件,例:log.info("这是一条日志");
ctx:该变量引用了当前线程的上下文    更多方法可参考:
vars:操作jmeter变量    a) vars.get(String key)l:从jmeter中获得变量值    b) vars.put(String key,String value):数据存到jmeter变量中    更多方法可参考:
props:操作jmeter属性,使用方法与vars类似,但是只能put进去String类型的值,而不能是一个对象。    a) props.get("START.HMS");  注:START.HMS为属性名,在文件jmeter.properties中定义     b) props.put("PROP1","1234");
prev:获取前面的sample返回的信息:    a) getResponseDataAsString():获取响应信息    b) getResponseCode() :获取响应code    更多方法可参考:
sampler:gives access to the current sampler (这个不太清楚,本人也没用过)
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!本文将从负载测试的角度,描述了做一次流畅的5万用户并发测试需要做的事情.你可以在本文的结尾部分看到讨论的记录.快速的步骤概要编写你的脚本使用JMeter进行本地测试BlazeMeter沙箱测试使用一个控制台和一个引擎设置Users-per-Engine的数量设置并测试你的集合&(1个控制台和10-14 引擎)使用 Master / Slave 特性来达成你的最大CC目标步骤一1 : 编写你的脚本开始之前,请确定从JMeter的Apache社区获得了最新的版本.你也会要下载&,因为它们可以让你的工作更轻松.有许多方法可以获得脚本:使用&&来记录你的方案使用&来设置一个代理,那样你就可以运行你的测试并记录下所有的东西从头开始全部手工构建(可能是功能/QA测试)如果你的脚本是一份记录的结果(像步骤1&2), 请牢记:你需要改变诸如Username & Password这样的特定参数,或者你也许会想要设置一个CSV文件,有了里面的值每个用户就可以是不同的.为了完成诸如“添加到购物车”,“登录”还有其它这样的请求,你也许要使用正则表达式,JSON路径提取器,XPath提取器,来提取诸如Token字符串,表单构建ID还有其它要素保持你的脚本参数化,并使用配置元素,诸如默认HTTP请求,来使得在环境之间切换时你的工作更轻松.步骤2 : 使用JMeter进行本地测试在1个线程的1个迭代中使用查看结果树要素,调试样本,虚拟样本还有打开的日志查看器(一些JMeter的错误会在里面报告),来调试你的脚本.遍历所有的场景(包括True 或者 False的回应) 来确保脚本行为确如预期...在成功使用一个线程测试之后——将其提高到10分钟10到20个线程继续测试:如果你想要每个用户独立——是那样的么?有没有收到错误?如果你在做一个注册过程,那就看看你的后台 - 账户是不是照你的模板创建好了? 它们是不是独立的呢?从总结报告中,你可以看到对测试的统计 - 它们有点用么? (平均响应时间, 错误, 每秒命中率)一旦你准备好了脚本:通过移除任何调试和虚拟样本来清理脚本,并删除你的脚本侦听器如果你使用了侦听器(诸如&&将响应保存到一个文件&),请确保你没有使用任何路径! , 而如果他是一个侦听器或者一个CSV数据集配置——请确保你没有使用你在本地使用的路径 - 而只要文件名(就好像跟你的脚本在同一个文件夹)如果你使用了自己专有的JAR文件,请确保它也被上传了.如果你使用了超过一个线程组(不是默认的那个) - 请确保在将其上传到BlazeMeter之前设置了这个值.步骤3 : BlazeMeter沙箱测试如果那时你的第一个测试——你应该温习一下&&有关如何在BlazeMeter中创建测试的文章.将沙箱的测试配置设置成,用户300,1个控制台, 时间50分钟.对沙箱进行这样的配置让你可以在后台测试你的脚本,并确保上的BlazeMeter的一切都运行完好.为此,先按下灰色的按钮: 告诉JMeter引擎我想要完全控制! - 来获得对你的测试参数的完全控制通常你将会遇到的问题:防火墙 - 确保你的环境对BlazeMeter的&(它们会实时更新)开发,并把它们放入白名单中确保你所有的测试文件, 比如: CSVs, JAR, JSON, User.properties 等等.. 都可以使用确保你没有使用任何路径如果仍然有问题,那就看看错误日志吧(你应该可以把整个日志都下载下来).一个沙箱的配置可以是这样的:引擎: 是能使控制台(1 个控制台&, 0 个引擎)线程: 50-300产能提升: 20 分钟迭代: 一直测试下去时间: 30-50 分钟这可以让你在产能提升期间获得足够多的数据(以防你遇到问题) ,而你将可以对结果进行分析,以确保脚本的执行确如预期.你应该观察下Waterfall / WebDriver 选项卡来看看请求是否正常,你不应该在这一点上出任何问题(除非你是故意的).你应该盯着监控选项卡,观察期内存和CPU消耗 - 这对你在步骤4中尝试设置每一个引擎的用户数量.步骤4 : 使用1个控制台和1个引擎来设置每个引擎用户的数量现在我们可以肯定脚本能在BlazeMeter中完美运行了——我们需要计算出要多少用户放到一个引擎中.如果你能用户沙箱中的数据来做这个决定,那就太棒了!在这里,我会给出一种不用回头去查看沙箱测试数据就能计算出这个数的方法.设置你的测试配置:线程数: 500产能提升: 40 分钟迭代: 永久时长: 50 分钟使用一个控制台和一个引擎.运行测试并(通过监视选项卡)对你的测试引擎进行监视.如果你的引擎对于75%的CPI使用率和85%的内存使用率都没有达到(一次性的峰值可以忽略)&的话:将线程数调整到700在测试一次提交线程的数量直到线程数达到1000或者60%的CPU或内存使用如果你的引擎过了75%的CPU使用率或者85%的内存使用率(一次性的峰值可以忽略 :看看你第一次达到75%的点,在那个点有多少并发用户.在运行一次测试, 而不是提高你之前500个用户数量的产能这一次将产能提升放到真实的测试中(5-15 分钟是一个好的开始) 并将时长设置为50分钟.确保整个测试过程中没有超过75%的CPU使用率或者85%的内存使用率...为安全起见,你可以把每个引擎的线程数降低10%的.步骤5:安装并测试集群我们现在知道了从一个引擎中我们得到了多少线程,在该章节的最后,我们将会知道一个集群能给我们提供多少用户。一个集群是指具有一个控制台(仅有一个)和0-14个引擎的逻辑容器。即使你可以创建一个使用超过14个引擎的测试案例——但实际上是创建了两个集群(你可以注意到控制台的数量增加了),并且克隆了你的测试案例……每个集群具有最多14个引擎,是基于BlazeMeter自己本身的测试,以确保控制台可以控制这14台引擎对新建的大量数据处理的压力。所以在这一步骤中,我们会用步骤4种的测试,并且仅仅修改引擎数量,将其增加到14.将该测试按照最终测试的全部时长运行。当测试在运行时,打开监听标签,并且检验:&&& 1. 没有一个引擎超过CPU75%的占有率和内存85%占有率的上限;&&& 2. 定位你的控制台标签(你可以通过一次点击Logs Tab-&Network Information,查看控制台私有IP地址来找到它的名字)——它不应该达到CPU75%占有率和内存85%占有率的上限。如果你的控制台达到了该上限——减少引擎数量并重新运行直到控制台在该上限之下。在这个步骤的最后,你会发现:&&& 1. 每个集群的用户数量;&&& 2. 每个集群的命中率。查看Aggretate Table中的其他统计信息,并找到本地结果统计图来获得有关你集群吞吐量的更多信息。步骤 6 : 使用 Master / Slave 特性来达成你的最大CC目标我们到了最后一步了。我们知道脚本正在运行,我们也知道一个引擎可以支持多少用户以及一个集群可以支持多少用户。让我们做一下假设:一个引擎支持500用户一个集群可以用户12个引擎我们的目标是5万用户测试因此为了完成这些,我们需要8.3 个集群..我们可以用8个12台引擎的集群和一个4太引擎的集群 - 但是像下面这样分散负载应该会更好:每个集群我们用10台引擎而不是12,那么每个集群可以支持 10*500 = 5K 用户并且我们需要10个集群来支持5万用户。这样可以得到如下好处:不用维护两个不同的测试类型我们可以通过简单的复制现有集群来增加5K用户(5K比6K更常见)只要需要我们可以一直增加将测试的名称从&My prod test& 改为&My prod test - slave 1&。我们回到步骤5,将高级测试属性(Advanced Test Properties)下的Standalone修改为Slave。按保存按钮——现在我们有了一个Master和9个Slave中的一个。返回你的&&My prod test -slave 1&.按复制按钮接下来重复步骤1-5直到你创建了9个slave。回到你的&&My prod test -salve 9& 并按复制按钮.将测试的名称改为 &My prod test -Master&.将高级测试属性(Advanced Test Properties) 下的Slave改为Master。检查我们刚才创建的所有的Slave(My prod test -salve 1..9)并按保存。你的5万用户级别的Master-Slave测试已经准备好了。通过按master上的开始按钮来运行10个测试,每个测试5千用户。你可以修改任意一个测试(salve或master),让它们来自不同的区域,有不同的脚本/csv/以及其他文件,使用不同的网络模拟器,不同的参数等。你可以在一个叫“Master load results”的master报告中的一个新tab页中找到生成的聚合结果的报告,你还可以通过打开单个的报告来独立的查看每一个测试结果。英文原文:
关注下方微信公众号“Java精选”(w_z90110),回复关键字领取资料:如Hadoop,Dubbo,CAS源码等等,免费领取资料视频和项目。&
涵盖:程序人生、搞笑视频、算法与数据结构、黑客技术与网络安全、前端开发、Java、Python、Redis缓存、Spring源码、各大主流框架、Web开发、大数据技术、Storm、Hadoop、MapReduce、Spark、elasticsearch、单点登录统一认证、分布式框架、集群、安卓开发、iOS开发、C/C++、.NET、Linux、Mysql、Oracle、NoSQL非关系型数据库、运维等。
61阅/1赞/0评
282阅/1赞/0评
319阅/0赞/0评
175阅/1赞/0评
143阅/0赞/0评
192阅/2赞/2评
352阅/0赞/3评
691阅/0赞/1评
130阅/6赞/3评
336阅/0赞/1评
欢迎访问素文宅博客^_^
转载请保留本站地址,谢谢您的支持!
可复制:本站所有内容
方法:Ctrl+C & Ctrl+V【图文】利用JMeter进行Web测试(badboy录制脚本)_百度文库
您的浏览器Javascript被禁用,需开启后体验完整功能,
享专业文档下载特权
&赠共享文档下载特权
&10W篇文档免费专享
&每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
利用JMeter进行Web测试(badboy录制脚本)
&&主要介绍JMeter的使用,其中包含了badboy录制脚本导入的方法
阅读已结束,下载本文到电脑
想免费下载本文?
登录百度文库,专享文档复制特权,积分每天免费拿!
你可能喜欢Jmeter录制HTTPS协议脚本
时间: 12:21:36
&&&& 阅读:503
&&&& 评论:
&&&& 收藏:0
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&1.3、https协议脚本录制
1.3.1、导入jmeter的证书:
打开Firefox导入Jmeter证书:菜单》高级》证书》查看证书》证书机构》导入》选中证书
1.3.2、设置代理
开始》控制面板》网络和Internet》更改主页》连接》局域网设置》设置本地机ip端口》确定
1.3.3、Jmeter设置:
A、添加线程组:测试计划》添加》Threads(Users)》线程组
B、添加HTTP代理服务器:工作台》添加》非测试元件》HTTP 代理服务器
C、设置HTTP代理服务器:如下图,设置完成后点击“启动”,开始录制
1.3.4、录制
A、录制:打开Firefox浏览器,输入https协议的url地址如图:https://www.baidu.com
B、展开线程组如下图,表示录制HTTPS成功
&标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&原文:http://www.cnblogs.com/perTest/p/7349642.html
教程昨日排行
&&国之画&&&& &&&&&&
&& &&&&&&&&&&&&&&
鲁ICP备号-4
打开技术之扣,分享程序人生!}

我要回帖

更多关于 jmeter打开脚本文件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信