Jmeter实现登录、创建BUG、解决bug的手写脚本
一、登录
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
http://blog.csdn.net/aduocd/article/details/46984009
http://blog.csdn.net/aduocd/article/details/46892593
Jmeter实现登录、创建BUG、解决bug的手写脚本的更多相关文章
- Jmeter实现登录bugfree、新建bug、解决bug脚本(抓包工具实现)
环境 Chrome jmeter3.1 fiddler4 win7 32位 Linux CentOs6.4 bugfree3.0.1 链接:http://pan.baidu.com/s/1gfHpbp ...
- jmeter手写脚本,使用正则获取cookie(禁用cookies管理器)
注:这里以bugfree为例 1.bugfree登录时会有重定向,这会导致每个URL都会有.因此要手动获取cookie的时候,需要去掉重定向勾选 正则获取动态PHPsession 获取到值后,放到信息 ...
- tensorflow创建cnn网络进行中文手写文字识别
数据集下载地址:http://www.nlpr.ia.ac.cn/databases/handwriting/download.html chinese_write_detection.py # -* ...
- JUC 并发编程--05, Volatile关键字特性: 可见性, 不保证原子性,禁止指令重排, 代码证明过程. CAS了解么 , ABA怎么解决, 手写自旋锁和死锁
问: 了解volatile关键字么? 答: 他是java 的关键字, 保证可见性, 不保证原子性, 禁止指令重排 问: 你说的这三个特性, 能写代码证明么? 答: .... 问: 听说过 CAS么 他 ...
- 在TFS中通过程序动态创建Bug并感知Bug解决状态
为便于跟踪问题解决情况,预警引擎产生的比较严重的预警日志,需要在TFS中登记Bug,通过TFS的状态流转,利用TFS Bug的Web挂钩功能,动态感知Bug解决状态,从而跟踪预警问题的解决状态, 整体 ...
- dede留言板BUG解决
dede留言板刷新后空白BUG解决 DEDE留言板验证码留空或者不正确返回空白页面的解决方法 解决方法如下进入文件/plus/guestbook.php 找到代码ShowMsg("验证码不正 ...
- IDEA插件(Android Studio插件)开发示例代码及bug解决
IDEA插件(Android Studio插件)开发示例代码及bug解决 代码在actionPerformed方法中,有个AnActionEvent e 插件开发就是要求我们复写上述的这个方法即可,在 ...
- 写了一个Windows服务,通过C#模拟网站用户登录并爬取BUG列表查询有没有新的BUG,并提醒我
写了一个Windows服务,通过C#模拟网站用户登录并爬取BUG列表查询有没有新的BUG,并提醒我 1.HttpUtil工具类,用于模拟用户登录以及爬取网页: using System; using ...
- MogileFS的实现和bug解决
MogileFS的实现 准备三个主机: centos7.1:tracker节点.database节点.storage节点:192.168.213.251 centos7.2.centos7.3:sto ...
随机推荐
- 读书笔记 effective C++ Item 33 避免隐藏继承而来的名字
1. 普通作用域中的隐藏 名字实际上和继承没有关系.有关系的是作用域.我们都知道像下面的代码: int x; // global variable void someFunc() { double x ...
- linux文件处理
取中间的行数作为train.txt sed -n '1000000,170910580p' train.txt > trainv1.txt 取前面的行数作为dev.txt head -10000 ...
- Oracle 函数 “判断数据表中不存在的数据,才允许通过”
create or replace function mca_detail_material_val(p_material_code VARCHAR2, --实参 p_material_name VA ...
- 洛谷P1938 找工就业
传送门啦 这个题本质就是跑一边最长路,重点就是在怎么建图上. 我们可以把点权放到边权上面,即将每一个边的终点点权当做这个边的边权,这个题里就是将工钱 $ d $ 当做边权. 如果这一条边需要坐飞机才能 ...
- C#socket编程序(一)
在讲socket编程之前,我们先看一下最常用的一些类和方法,相信这些能让你事半功倍. 一.IP地址操作类 1.IPaddress类 a.在该类中有一个 parse()方法,能够把点分十进制IP地址 转 ...
- JDBC连接池和DBUtils
本节内容: JDBC连接池 DBUtils 一.JDBC连接池 实际开发中“获得连接”或“释放资源”是非常消耗系统资源的两个过程,为了解决此类性能问题,通常情况我们采取连接池技术,来共享连接Conne ...
- hdu 4349 求C(n,0),C(n,1),C(n,2)...C(n,n).当中有多少个奇数 (Lucas定理推广)
Lucas定理:把n写成p进制a[n]a[n-1]a[n-2]...a[0],把m写成p进制b[n]b[n-1]b[n-2]...b[0],则C(n,m)与C(a[n],b[n])*C(a[n-1], ...
- Drawable子类之——StateListDrawable (选择器)
Drawable子类之——StateListDrawable (选择器) https://www.jianshu.com/p/7257ce82c762 本文出自 “阿敏其人” 简书博客,转载或引用请注 ...
- 基于 Laravel 开发博客应用系列 —— 从测试开始(一):创建项目和PHPUnit
1.创建博客项目 我们将遵循上一节提到的六步创建一个新 Laravel 5.1 项目的步骤,创建本节要用到的博客项目 —— blog. 首先,在本地主机安装应用骨架: nonfu@ubuntu:~/C ...
- CIDR的IP地址的表示与划分方法
早期的ip地址划分: 最初设计互联网络时,为了便于寻址以及层次化构造网络,每个IP地址包括两个标识码(ID),即网络ID和主机ID.同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机(包 ...