一、登录
1、 打开jmeter、添加线程组,命名为test,如下图:
2、 添加HTTp默认请求
1)服务器名称或IP:这里只能填写域名或IP地址
2)端口号:配置bugfree时的端口号,通常默认为80
3)添加了该组件后,后面的组件中即可不再重复填写服务器名称或IP
3、 添加HTTP Cookie管理器,test>右击>添加>配置原件>HTTP Cookie管理器
在后面创建bug时,需要保持登录状态,即需要保存Cookie,因此这里用到Cookie管理器,这里使用默认值即可
4、 添加HTTP请求,test>右击>添加>sampler>HTTP请求
方法:常用方法有POST和GET。这里稍微解释一下POST和GET方法。向服务器发送数据时,通常用POST方法,此时,传递的参数是直接通过后台发送到服务端,在浏览器的URL上不会看到所传递的参数;而使用GET方法则会将传递的参数显示在URL中
路径:这里是登录的接口,而非登录页面的URL。可以通过查看浏览器的消息找到
Parameters:同请求一起发送的参数,该参数可以通过使用抓包工具fiddler进行抓取,如下图:
5、 添加断言,test>右击>添加>断言>响应断言,如下图:
断言相当于LR中的检查点的设置
6、 添加察看结果树,test>右击>添加>监听器>察看结果树,运行脚本,如下图:
二、新建BUG(操作步骤和上面一样)
1、添加HTTP请求,test>右击>添加>sampler>HTTP请求
修改名称、添加方法、设置路径、添加传递的参数
2、添加响应断言,test>右击>添加>断言>响应断言,如下图:
修改名称、设置要检查的文本内容
3、添加正则表达式提取器(LR关联),test>右击>添加>后置处理器>正则表达式提取器,如下图:
引用名称,即关联的名称;
正则表达式:parent.location='/bugfree/bug/(.+?)' (该路径正确,注该路径还是要根据抓包的情况去具体应用,但是之前的路径是不正确的所以导致在后边解决BUG的时候会有报错)
模板:$1$
匹配数字:0,随机
缺省值:error 可以自定义
在这里添加正则表达式提取器,主要是因为解决BUG的时候需要对BUGID进行关联
4、添加察看结果树,test>右击>添加>监听器>察看结果树,运行脚本,如下图:
如果这里你拿不准,那么可以登录Bugfree管理系统查看是否创建BUG成功
三、解决BUG
1、添加HTTP请求,test>右击>添加>sampler>HTTP请求,如下图:
修改名称,设置路径,添加传递的参数值
注意:这里的路径设置,需需要调用上面的关联ID的:调用方法如下:
bugfree/bug/${id}/resolved
2、添加察看结果树,test>右击>添加>监听器>察看结果树,运行脚本,如下图:
发现报错误信息,发现并未取到关联的ID值,猜测可能是关联错误导致;后去查看发现是由于关联时,正则表达式的路径书写错误,带改正后运行一切OK。
遇到的问题:
问题1:
运行报错;
分析:可能是关联错误导致,后去查看发现是由于关联时,正则表达式的路径书写错误导致
解决办法:
根据抓包中的路径进行修改后,OK
问题2:
创建新BUG的时候脚本运行正常,但是登陆查看发现BUG未创建成功
原因分析:可能是由于关联导致,但是由于创建的时候不需要关联所以排除;后查看响应数据信息发现数据中存在乱码的现象,由此推测可能是由于乱码问题导致新建不成功
解决办法:
在HTTp默认请求值中设置Content encoding=utf8,运行OK
如果没有HTTp默认请求值,则需要在每个HTTP请求中都需要修改编码格式
***************************************************************************************************************
参考文档:
http://www.cnblogs.com/wuxiaoyu-1537/p/6232470.html