JMeter压力测试(流程骨架/抢红包举例实战/多场景多线程组混合并发)

点击链接加入QQ群 522720170(免费公开课、视频应有尽有):https://jq.qq.com/?_wv=1027&k=5C08ATe

一、JMeter进行HTTP协议接口的压力测试

1.添加线程组

填写并发信息

2.添加HTTP请求

填写HTTP请求信息

3.设置监听器

4.测试执行

1.)点击【保存】按钮,保存测试脚本,格式为:*.jmx;

2.)点击【启动】按钮,执行测试脚本;

5.测试结果解析

1.)查看结果树:可以查看测试结果、请求信息、响应信息;

2)查看聚合报告:可以查看测试的请求数、响应时间和成功率

二、JMeter测试抢红包示例

(1)概述

    此处记录使用JMeter对抢红包业务进行压力测试的过程,涉及的内容包括:

1.抢红包业务压力测试需求分析;

2.创建JMeter测试计划,根据业务执行逻辑设计测试脚本;

3.设置检查点;

4.回放脚本,根据业务逻辑判断检查点设置是否有效;

5.脚本参数化;

6.虚拟批量用户执行抢红包业务;

7.测试结果分析;

(2)测试需求分析

1.验证批量用户抢红包时的响应时间是否满足300ms以内;

2.验证相同红包每个用户只能抢1次;

3.每个红包最多只能被抢9次;

4.用户抢红包的业务:

1)使用手机访问红包,请求验证码;(参数包含手机号码和验证码)

2)(验证码下发成功),使用手机抢红包;(参数包含手机号码和验证码)

5.测试手机号码和测试红包有限;

(3)创建测试计划、设计测试脚本

步骤如下:

1.新建测试计划,右击测试计划-->【添加】-->【Threads(Users)】-->【线程组】,创建名为“抢红包测试”的线程组;

2.右击“抢红包测试”线程组-->【添加】-->【Sampler】-->【HTTP请求】,添加名为“请求验证码”的HTTP请求;

1)填写“请求验证码”的HTTP请求信息;

2)为“请求验证码”请求【查看结果树】,监听测试结果;

3.右击“抢红包测试”线程组-->【添加】-->【Sampler】-->【HTTP请求】,添加名为“抢红包”的HTTP请求;

1)填写“抢红包”的HTTP请求信息;

2)为“抢红包”请求添加【查看结果树】,监听测试结果;

4.右击“抢红包测试”线程组-->【添加】-->【监听器】-->【查看结果树】,看测试结果、请求信息、响应信息;

5.右击“抢红包测试”线程组-->【添加】-->【监听器】-->【聚合报告】,查看测试的请求数、响应时间和成功率等信息;

6.按上述步骤创建测试脚本,效果如下:

(4)设置检查点

步骤如下:

1.使用一组正确的测试数据,验证请求验证码、抢红包成功的提示信息:

   1)请求验证码成功的提示信息为“短信验证码下发成功!”

2)请求验证码成功后,抢红包成功的提示信息为“成功”

2.设置检查点

1)右击“请求验证码”请求-->【添加】-->【断言】-->【响应断言】;

2)点击【添加】按钮,编辑断言信息,该例中检查响应数据是否包含“短信验证码下发成功!”

3)右击“抢红包”请求-->【添加】-->【断言】-->【响应断言】;

4)点击【添加】按钮,编辑断言信息,该例中检查响应数据是否包含“成功”;

(5)验证检查点是否生效

1..使用失效数据模拟用户请求,确认检查点是否生效;

1.)使用失效数据请求验证码时,测试失败,因没有检查到指定信息;

    2.)使用失效数据抢红包时,测试失败,因没有检查到指定信息;

2.使用正确信息请求时,测试通过;

(6)脚本参数化

步骤如下:

1.右击“抢红包测试”线程组-->【添加】-->【配置元件】-->【CSV Data Set Config】;

2.编辑【CSV Data Set Config】信息,如下图:

3.修改“请求验证码”和“抢红包”请求中需要参数化的参数值,和步骤2中定义的变量属性一致;

4.参数文件示例:

(7)虚拟批量用户执行抢红包业务

前置条件:

1.检查点生效、测试脚本调试成功;

2.测试参数化的测试数据准备完成;

步骤:

1.设置测试计划循环次数;

2.点击启动按钮,开始执行测试

(8)测试结果分析

1.查看结果树:测试结果与实际结果一致,成功118次,失败7次(调试脚本时已使用的信息,为失效信息)

2.查看聚合报告:

三、多线程组并发测试(多场景混合并发)

如果测试需求出现如下场景,该如何使用JMeter实现压力测试呢?即JMeter如何实现多线程组并发测试,也就是Loadrunner中的混合场景测试时,该如何设置并发数?

测试需求如下:对业务A、业务B、业务C、业务D、业务E,5个业务按并发比例要求进行100个用户并发的压力测试;

JMeter是可以实现上述需求的,测试方案如下:

1.创建一个测试计划;

2.在该计划下添加5个线程组,分别是对业务A、业务B、业务C、业务D、业务E;

3.分别设置线程组业务A、业务B、业务C、业务D、业务E的线程数为:40、10、20、25、5(总并发量为100,按并发比例设置并发用户数)

3.在该计划下添加测试结果监控;

4.设置执行时间,开始执行测试,测试时可以看到并发数为5个业务并发量的总和,,如下图:

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

推荐阅读更多精彩内容