qileilove

blog已经转移至github,大家请访问 http://qaseven.github.io/

jmeter学习系列--脚本参数化和断言设置

话说上回,我们用Badboy录制了Jmeter的脚本,用Jmeter打开后形成了原始的脚本。但是在实际应用中,为了增强脚本的多样性,就要使脚本参数化。这里我以登录为例,参数化用户账号与用户密码。
图1.JPG
图1 :原始脚本
这里我利用Jmeter的CSV Data Set Config来实现参数化功能。
步骤如下:
1.在本地磁盘下新建一个文本。比如:F:\test.txt 文件的内容如下:
user,passwd
user1,passwd1
user2,passwd2
2.右键点击Jmeter中需要参数化的某个请求,选择添加——配置原件——CSV Data Set Config,会添加一个CSV Data Set Config,需要设置相关的一些内容,具体如下:
图2.JPG
图2:CSV Data Set Config设置
解释下图2的参数:
Filename:文件名。指保存信息的文件目录,可以相对或者绝对路径(比如:F:\test.txt)
Variable Names:参数名称(如:有几个参数,在这里面就写几个参数名称,每个名称中间用分隔符分割,分隔符在下面的“Delimitet”中定义,为了和文件中的“,”对于,这里也用“,”分割每个参数名,(比如:user,passwd)
Delimitet:定义分隔符,这里定义某个分隔符,则在“Variable Names”用这里定义的分隔符分割参数。
Recycle on EOF:是否循环读入,因为CSV Data Set Config一次读入一行,分割后存入若干变量中交给一个线程,如果线程数超过文本的记录行数,那么可以选择从头再次读入。
3.在需要使用变量的地方,比如在登录操作中,需要提交的表单字段包含用户名密码,我们就可以用${变量名} 的形式进行替换,例如${user}和${password}。如图3
图3.JPG
图3:参数化设置
这样,脚本的参数化基本上完成了。如果我们要确定Jmeter有没有按照我们的预期进行工作,我们应当考虑使Jmeter提供的断言,加到Sampler 里面可以对返回的结果进行判断,例如判断HTTP返回结果里面是否含有某个字符串。我们可以根据自己的需要选择要测试的响应字段,文本,还是代码,一般选 择响应文本,然后,我们选择匹配规则,一般选择“包含”,如果要精确匹配,则可以选择“匹配”,但是选择“匹配”,因为响应的内容一般还包含其他的信息, 比如html语言标签,所以很难准确匹配。然后在在要册似乎的模式下面,添加你要响应的内容。如图
图4.JPG
图4 :断言设置
添加好断言后,要添加一个监听器,以监听响应断言,选择添加——监听器——断言结果。
图5.JPG
图5 :添加断言结果
添加完断言结果后,我们运行脚本来测试下参数化和断言的功能。首先先设置下线程组中的线程数,Ramp-up period,和循环次数,我这里设置为10,0,5.就是10个线程并发,循环5次。然后点击运行-启动。我们查看断言结果的图。
图6.JPG
图6:运行成功的断言结果
运行没有出错。全部成功。我们修改下登录参数,让登录失败,然后看下断言结果。如图
图7.JPG
图7:响应断言失败

posted on 2012-05-02 12:48 顺其自然EVO 阅读(6479) 评论(0)  编辑  收藏 所属分类: jmeter and badboy


只有注册用户登录后才能发表评论。


网站导航:
 
<2012年5月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

导航

统计

常用链接

留言簿(55)

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜