从BadBoy导入脚本并调试
一、 利用BadBoy录制自动化脚本,录制事件为禅道中创建bug

在badboy地址栏输入被访问的URL地址

录制成功后截图如下:

录制完成后在badboy窗口中回放确定脚本录制的正确性,回放成功后清除响应,然后导出为JMeter脚本。
清除响应: Setp1 (右键)->clear Response
导出JMeter脚本: File->Export to JMeter
第二步: 在JMeter窗口中打开BadBoy中录制的.jmx的脚本文件
打开后如下所示:

第三步: 添加“察看结果树”并调试脚本
1. 添加监视器->“察看结果树”

2. 运行脚本,在“察看结果树”中查看运行情况

从上图可以看到回放的结果,绿色表示通过,红色表示失败。 看到这些失败的红色不要害怕,我们来分析一下。
3. 选择“察看结果图”中的HTML视图能够更加直观的查看运行结果

4. 删除无用的http请求
可以看到红色对应项的请求均为null, 且响应结果为java异常。对应到step中的请求步骤,可以发现图中红色标示的http请求项为":///...",对应的"服务器名称为IP"为空。
度娘告诉我这可能是禅道系统请求的本地资源,至于是与不是,我们不管它,因为它不影响我们的脚本运行结果,直接在step1下选中这些项,删除即可。

清除后的HTTP请求如下所示,是不是干净多了?

5. 继续调试->回放结果
此时可以再次回放,查看回放结果。为了回放结果更加直观,按上图红线标识所示,选中添加bug的页面,给bug 的标题(title)取名为NewBugByJMeter;
6. 清除结果树的log
按如下步骤清除结果树中的log

7.点击回放按钮,回放脚本, 查看禅道的bug列表

至此, bug添加成功,说明JMeter脚本没有问题了。
补充两个我遇到的问题:
1. Jmeter中查看HTML时的乱码问题
解决办法:
Jmeter安装目录/bin/jmeter.properties中sampleresult.default.encoding默认为ISO-8859-1,将参数修改为
sampleresult.default.encoding=utf-8 即可,注意将注释符号#去掉。
2. Jmeter脚本回放成功,但禅道系统中并没有增加相用的bug,也就是bug添加失败。
解决办法:
将“添加bug”页面的结果树-响应结果(选择text视图)复制到一个txt文件中,并重命名为html, 用浏览器打开就能够很直观到看到这个页面的情况。
从页面中我发现有一个sql插入错误,其中有一项"HTTP-X-REQUEST"值为true,但数据库中的bug表里面是没有这个字段的,初步估计为Jmeter自带的。
删除该项之后,重新运行脚本成功。
删除Jmeter自带的"HTTP-X-REQUEST"项后的结果如下所示

从BadBoy导入脚本并调试的更多相关文章
- 测试工具之Jmeter(使用badboy录制脚本)
前面使用badboy工具时说过,badboy是可以录制Jmeter的测试脚本,这样省去了自己设计测试用例的麻烦 Jmeter主要是一个性能测试工具,不光在web和http,现在扩展很多功能都可以在Jm ...
- Shell脚本的调试技术
编程中必不可少的一点就是调试,Shell脚本以其强大的功能令人向往,当然,它的强大之处不只是体现在语言的实现功能上,更强大的是它的调试功能,下面,我将以实例讲解Shell脚本的调试技术. 下面是我所用 ...
- PLSQL Developer图形化界面新建用户并授权并导入脚本
最近用了PLSQL Developer第三方的软件.记录一下实现新建用户并授权并导入脚本的功能. 第一步.切换sys用户(如果此处方法已经掌握,直接切换sys即可,就不用看这一步了) 首先检查当前登录 ...
- 让策划也能轻松修改数据的方法:运用Excel2Json2Object插件将xml表格转为Object导入脚本
让策划也能轻松修改数据的方法:运用Excel2Json2Object插件将xml表格转为Object导入脚本 运用Excel2Json2Object插件将xml表格转为Object导入脚本 下载地址 ...
- Shell脚本的调试方法
Shell脚本的调试方法 Shell提供了一些用于调试脚本的选项,如下所示: -n 读一遍脚本中的命令但不执行,用于检查脚本中的语法错误 -v 一边执行脚本,一边将执行过的脚本命令打印到标 ...
- 使用badboy录制脚本 结合Jmeter一起测试。
1.badboy介绍 Badboy是一款不错的Web自动化测试工具,如果你将它用于非商业用途,或者用于商业用途安装Badboy 的机器数量不超过5台,你是不需要为它支付任何费用的.Badboy提供了将 ...
- Unity修改脚本后调试
修改脚本后调试有时候需要运行,为了提高效率可以设置编辑器中执行,同时也可以开启有效性检查(即更改面板变量即可刷新代码) [ExecuteInEditMode] public class XXXX: M ...
- mysql导入脚本
#登陆 mysql -u root -p #创建数据库 CREATE DATABASE `gps` CHARACTER SET utf8 COLLATE utf8_general_ci; #选择数据库 ...
- jemeter——badboy导入的jmx文件自带元件解析
线程组设置与解析 含义:1秒启动100个线程,每个线程循环调用20次请求 (包括FTP请求.Java请求.http请求,根据你提交的请求而定) delay thread creation until ...
随机推荐
- indexedDB 增删改查
/** * 打开数据库 */ export function openDB() { return new Promise((resolve, reject) => { let indexedDB ...
- hdu 5288 ZCC loves straight flush
传送门 ZCC loves straight flush Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K ...
- LeetCode OJ--Reverse Linked List II
http://oj.leetcode.com/problems/reverse-linked-list-ii/ 链表的操作 #include <iostream> using namesp ...
- ngxtop
http://www.cnblogs.com/felixzh/p/8709201.html
- jquery.fullPage.js全屏滚动插件
注:本文内容复制于http://www.51xuediannao.com/js/jquery/jquery.fullPage.html 和 http://www.360doc.com/content/ ...
- python type()函数
我怎么把一个变量的类型写入文件?a = 3type(a)貌似返回的是type类型,不能打印,也不能用文件的write怎么半,或者怎么转换成srt之类的? type()函数得到的是一个类型而不是字符串, ...
- luogu P1351 联合权值
题目描述 无向连通图G 有n 个点,n - 1 条边.点从1 到n 依次编号,编号为 i 的点的权值为W i ,每条边的长度均为1 .图上两点( u , v ) 的距离定义为u 点到v 点的最短距离. ...
- ClassLoader Java中类加载出现在哪个阶段,编译期和运行期? 类加载和类装载是一样的吗
1.ClassLoader Java中类加载出现在哪个阶段,编译期和运行期? 类加载和类装载是一样的吗? :当然是运行期间啊,我自己有个理解误区,改正后如下:编译期间编译器是不去加载类的,只负责编译而 ...
- js中有包装类,java中也有包装类
new Number() vs Number() What is the difference between new Number() and Number()? I get that new Nu ...
- row and col
1.行 <Row gutter={{ md: 6, lg: 12, xl: 12 }}></Row> gutter: md: 中等屏幕 桌面显示器 (≥992px) lg: 大 ...