JMeter脚本开发之BadBoy环境搭建和录制

JMeter录制

JMeter自身提供了http代理方式进行录制,原理是解析网络数据包,按Http协议包装秤Http,Request,HttpResponse等对象,同时也提供了第三方工具BadBoy进行录制。

BadBoy录制

BadBoy就是一个浏览器模拟工具,功能有:

              1.1具有录制回放功能

              1.2可以进行调试

              1.3可以用来做自动化测试,因为具有捕获表单数据的功能

              1.4对web页面进行诊断,诊断系统响应快慢,响应数据大小

               1.5录制功能,录制的脚本可以直接导出jmx格式。

BadBoy的录制方式:

1.request:模仿浏览器发送表单信息到服务器,每一个资源都将作为请求发送。

2.Navigation:记录用户鼠标动作,类似于QTP回放时模拟一个点击

基于JMeter脚本的要求,我们需要选用request方式来进行录制,这些请求将会以jmx的格式保存下来,从而我们才可以导入JMeter进行复用

下面我们安装BadBoy进行录制:

(1)下载badBoy进行安装(直接双击exe)

(2)打开BadBoy,在开始菜单中找到启动快捷方式点击打开,初始界面默认开启了Request的录制模式。点击菜单中的N可以切换成Navigation录制方式


图1

在上图地址栏直接输入请求的页面,回车或者点击向右箭头开始录制。

Script目录树结构说明:

Test Suite 1:默认的脚本根节点,类似JMeter中的测试计划根节点

Test1:测试活动根节点,可以理解为一个业务功能的脚本存放在此目录下

Step2:测试活动的步骤,业务过长可拆分为多个步骤,建立多个Step

开始录制前介绍下jforum测试环境的安装:

我的Jforum环境搭建在win 7 64位系统之上

1. 到Jforum官网下载安装包,地址是http://jforum.net/download.jsp

2.解压下载的压缩包到%TOMCAT_HOME%webapps/目录(%TOMCAT_HOME%是你机器上Tomcat的安装目录),如下图


图2

TOMCAT 和JDK 请自行网上下载和配置环境变量,教程很多。

3.启动TOMCAT:


图3

4.进入安装页面,在浏览器中输入地址http://127.0.0.1:8080/jforum-2.1.9/install.jsp

我下的版本是2.1.9 所以是这个编号 ,根据自己下的版本来。

图4

在配置JForum之前必须保证安装的库是存在的,本地需下载MySql,然后建立一个jforum的库,MySql请至官网下载, 我下的版本是mysql-5.6.37,下载安装步骤可参考:http://www.jb51.net/article/89224.htm,在安装JForum中选择的库就是在mysql中建立的jforum库,安装过程中会访问这个库并自动生成表结构以及初始化数据。我选择用JDBC来访问MySql的jforum库,账号是root账号,数据库端口默认是3306,数据库密码填入自己机器上设置的MySql密码。填完内容后点击下一步进行完成安装

图5

如果遇到安装报错,请参考http://blog.sina.com.cn/s/blog_3cacb01b0102vocg.html

回到BadBoy,输入url链接,可以看到论坛的登录界面,从这里开始进行录制步骤。访问这个链接之前要保证TOMCAT和MySql都已启动,不然网页链接不成功。

图6

 Step1:输入用户名和密码完成登录,成功后进入论坛首页(用户名和密码是配置jforum使用的管理员用户和密码)


图7

Step2:进入相应版块

点击菜单栏中开始录制左边的+号新建一个Step2,进入Test Forum版块


图8

Step3:发帖

同样点击+号,然后点击网页中的New post来编辑一个新帖,然后点发送


图9
图10

以上就是录制登录及发帖的全过程,录制完成后导出成JMeter脚本,如下图所示

下面我们在JMeter中打开刚刚保存的Script.jmx脚本,JMeter以树形结构显示脚本,执行时原则上按节点先后顺序往下执行

图12

有关上图中的脚本元件介绍如下:

Test Plan:测试计划,JMeter测试脚本根节点,每一个测试脚本都是一个测试计划,名称可以自定义,功能有:

(1):设置用户全局变量,即在“用户定义的变量”中定义

(2):独立运行每个线程组,如果一个测试计划中有多个线程组,设置此项可以生效,不设置时每个线程组同时运行

(3):Run teardown Thread Groups after shutdown of main threads.关闭主线程后运行teardown程序来正常关闭线程组(运行的线程本次迭代完成后关闭)

(4):函数测试模式,在调试脚本的过程中我们可能需要获取服务器返回的详细信息就可以选择此项,此项记录较多的数据会影响测试效率,所以在执行性能测试时请关闭此项

(5):Add firectory or jar to classpath 把测试需要依赖的jar包或包所在的目录加入类路径

ThreadGroup:  是模拟虚拟用户的发起点,在此可以设置线程数及运行次数或者运行时间,还可以定义调度时间与运行时长

图13

HTTP Cookie Manager:JMeter通过加入HTTP Cookie Manager来自动记录Cookie信息,选择默认即可

图14

HTTP Header Manager:管理HTTP头信息

图15

Step1:实际上这是一个循环控制器,我们可以在【逻辑控制器】下找到它,在此我们可以设置循环次数,以我们录制业务为例,一次登录可以多次发送新帖,所以把登录(step1)的循环次数设置为1(图17),step2/3进入板块与发帖的循环次数设置为永远


图16


图17

http://127.0.0.1.jforum-2.1.9/user/login.page:这是一个HTTP请求元件,我们可以在【Sampler】中找到他的身影 Step1-----添加----Sampler-----Http请求。

图18是模拟登录页面的脚本,模拟进入登录页面:

图18

下面我们来认识下上图中的各种属性:

1.Web服务器:指定Http请求的主机地址,不需要加上“http://”,JMeter自动会加上,普通web服务端口号是80,邮箱端口一般是443,如果访问地址中带有其他端口号要在此框内填入。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容