使用jmeter录制bugfree脚本

来源:互联网 发布:淘宝哪家耐克是正品 编辑:程序博客网 时间:2024/05/18 13:11

我的环境:

jdk:1.7;jmeter:2.12

应用部署情况:

系统linux; 应用部署环境:lammp 测试系统 bugfree 3.0.1


录制脚本前说明一下需了解的知识

① bugfree的业务逻辑

用户组用户总共设置三个shy,lain,larry,三个均在同一用户组。由lain登陆平台创建一个bug,提交给shy并抄送给larry。shy登陆平台解决bug。

②jmeter 中的正则表达式的使用

参考文档:http://jmeter.apache.org/usermanual/regular_expressions.html

对单字符串的关联 一般使用   (.+?) 来匹配

比如 在一个web 的page中有如下

name="file" value="readme.txt">    如果要匹配 readme.txt 这个字符串, 可以进行如下正则表达式 name="file" value="(.+?)"> 来匹配

如下简单说明:

()       需要关联的字符串括号中

.        任意匹配的字符串

+        单次或多次循环

?       找到匹配的第一个位置就停止

-----------------------------------------------------------------------------------------------------------------------------

注意:如果只有 .+    没有  ? 的话,  将会把所有符合条件的值匹配出来。


开始录制脚本

①准备工作。添加线程组;添加cook管理器;设置默认http请求,设置http代理;ie浏览器设置代理

添加线程组: add -- threads-- thread group


添加cook管理器: (test plan 右键) add -- Config Element -- HTTP Cookie Manager


设置默认http请求:add--Config Element--HTTP Request Defaults

server name 或ip 填写服务ip地址 192.168.131.131 (我虚拟机的ip地址)


设置http代理:(workBench 上右键)add -- Non-Test Elements -- HTTP(S) Test Script Recorder 

并在Golbal Settings-- port 设置为8080


ie浏览器设置代理: Internet 选项---连接--局域网设置  代理服务器  为LAN使用代理服务器设置前打上勾, 地址为127.0.0.1 端口为8080 确定


②开始录制

当第一步设置完成后,点击HTTP(S) Test Script Recorder  下面 start

打开ie浏览器 输入bugfree平台地址 http://192.168.183.131/bugfree/site/login

lain开始登陆--创建bug -指派给shy- 退出  shy登陆--解决bug--退出


录制完成后点击HTTP(S) Test Script Recorder 下的stop按钮。


生成脚本


③分析脚本

1.添加一个查看结果集

添加查看结果集: add--Listener--View Results Tree


2.分析脚本,删除冗余的脚本 运行脚本


3.查找需要关联的字符串

    根据运行结果 发现 87,89 出错。仔细分析:这两步对应的是解决bug的操作,登录平台查看,发现id为11的bug已经被解决,此时再去寻找id为11的bug,显然是错误的。


    又根据业务逻辑,每次创建bug的时候都会生成与此bug相对应的唯一的id值,而当shy登陆平台去解决bug也是根据此值去找到对应的bug,因此,可以考虑将此值作为关联值。

    有了需要的关联的值,只需要找到此值第一次出现的地方,然后做正则表达式即可。经多次录制脚本发现:在lain创建完bug保存的时候,会有两个面的跳转,

分别为两个http request 设置查看结果集,再次运行脚本。


4.添加正则表达式

根据以上推断。 在75处添加正则表达式

add -- PostProcessors -- Regular Expression Extractor


设置正则表达式:


Reference name:设置别名

Regular Expression: 表达式  其中(.+?) 表示从页面中找到第一个符合要求的字符

Template:设置模块,1表示第一个


其中bugid为正则表达式 值,在下文中使用 ${bugid}表示

5.替换正则表达式的值

将需要以${bugid}替换需要关联的值


④运行脚本,查看结果。


登陆平台 查看是否正确



 至此,脚本录制成功。



1 0
原创粉丝点击