博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Jmeter学习——3
阅读量:6357 次
发布时间:2019-06-23

本文共 1641 字,大约阅读时间需要 5 分钟。

Jmeter学习过程中,发现了比较好的关于Jmeter的使用,在这里我就不详细写了,直接引用了,嘿嘿!





 JMeter参数化第二种方法介绍

当你利用Badboy将你的测试脚本录制完毕后,接下来就是脚本的调试工作了。

在我看来,调试应该包括有以下几个方面:
1.根据测试场景对脚本进行必要的修改;
2.脚本参数化;
3.添加适当的Listener,进行测试结果的简单收集
今天讲到的是脚本的参数化问题。
在Jmeter里面,可以利用的对Request进行配置的组件都包含在Configuration Elements(配置元件)中。
其中CSV Data Set Config就是我们今天讲的主角。
假如,现在要测试某个网站的Search的性能,于是你录制了一个search的HTTP Request。
参数化Step 1:右键点击JMeter中需要参数化的某个请求,选择添加——配置元件——CSV Date Set Config,会添加一个CSV Date Set Config,需要设置相关的一些内容,具体如下:

图1

Filename --- 参数项文件名。指保存信息的文件目录,可以相对或者绝对路径(比如:C:\searchiteam.cs)

File Encoding --- 文件的编译方法,一般为空
Vaiable Names --- 文件中各列所表示的参数项;各参数项之间利用逗号分隔;

Delimiter --- 如文件中使用的是逗号分隔,则填写逗号;如使用的是TAB,则填写\t;

Recycle on EOF? --- True=当读取文件到结尾时,再重头读取文件,False=当读取文件到结尾时,停止读取文件;
Stop thread on EOF? --- 当Recycle on EOF?一项为False时起效;True=当读取文件到结尾时,停止进程;

参数化Step 2:将HTTP Request需要参数化的项的Value处,用${参数名}代替;如:将p的Value修改为${Searchitem}

如图:

图2:参数设置

这样,脚本的参数化基本上完成了。如果我们要确定Jmeter有没有按照我们的预期进行工作,我们应当考虑使Jmeter提供的断言,加到Sampler里面可以对返回的结果进行判断,例如判断HTTP返回结果里面是否含有某个字符串。我们可以根据自己的需要选择要测试的响应字段,文本,还是代码,一般选择响应文本,然后,我们选择匹配规则,一般选择“包含”,如果要精确匹配,则可以选择“匹配”,但是选择“匹配”,因为响应的内容一般还包含其他的信息,比如html语言标签,所以很难准确匹配。然后在在要册似乎的模式下面,添加你要响应的内容。如图

图3:断言设置

添加好断言后,要添加一个监听器,以监听响应断言,选择添加——监听器——断言结果。

图4:添加断言

添加完断言结果后,我们运行脚本来测试下参数化和断言的功能。首先先设置下线程组中的线程数,Ramp-up period,和循环次数,我这里设置为10,0,5.就是10个线程并发,循环5次。然后点击运行-启动。我们查看断言结果的图。

图5:运行成功的断言结果

完成步骤之后,脚本的参数化就大功告成了。

其实,在我看来大部分的测试软件的参数化都是类似的,都是将需要参数化的项目用符号替代,然后通过定义参数文件中的各项来达到参数化的目的。
相比起Jmeter2.2版本,CSV Data Set Config添加了File Encoding(个人认为没有什么用);参数间分隔符多了Tab;Stop thread on EOF?
还有补充说明一下,在Jmeter中除了可以为HTTP Request进行参数化,还可以给其他的请求做参数化,做法都是类似的。

 

转载于:https://www.cnblogs.com/hyzhou/archive/2011/10/31/2230554.html

你可能感兴趣的文章
Linux之编译需要的文件变化时刻
查看>>
IntelliJ IDEA中怎么查看方法说明?
查看>>
mvn常用命令
查看>>
redis zset 顺序问题
查看>>
C# 判断网站是不是discuz论坛
查看>>
TypeScript--接口
查看>>
JavaScript高级程序设计(3)
查看>>
2019年的前端学习计划
查看>>
Vue+thinkJs博客网站(一)之vue多页面应用的webpack3配置
查看>>
你属于程序员中的哪种人?
查看>>
助力中文文字识别突破,美团公开首个真实场景招牌图像数据集
查看>>
爬虫提交form表单中含有(unable to decode value)解决方法
查看>>
Linux中用户管理
查看>>
236. Lowest Common Ancestor of a Binary Tree
查看>>
Redash本地开发环境搭建
查看>>
你真的懂switch吗?聊聊switch语句中的块级作用域
查看>>
一枚戒指,一场仪式,这件事阿里巴巴坚持了15年
查看>>
2019准备了Java程序员最新招聘标准,阿里、京东等一线互联网企业
查看>>
lodop打印控件的使用
查看>>
Node.js 指南(HTTP事务的剖析)
查看>>