实验目的

(1)了解Jmeter性能测试工具的用途和简单的操作;
(2)掌握Jmeter性能测试工具测试过程;
(3)能够使用Jmeter进行负载测试;

实验步骤

使用Jmeter对MercuryTours网站(Mtours航空网站本地服务开启,浏览器输入http://localhost:8080/Mtours)进行负载测试。共分为创建脚本、负载测试两个步骤。

实验环境

测试工具:Jmeter
被测程序:Mtours航空网站订票系统

实验工具

JMeter:https://jmeter.apache.org/download_jmeter.cgi

链接:https://pan.baidu.com/s/1LPJoWw1PBl2xGinrkW81hw 提取码:cq4z

BadBoy:https://us.badboy.com.au/

v2.2.1:链接:https://pan.baidu.com/s/1WustinShXDfQ4Sr08_L61g 提取码:1fmq
v2.2.5:http://www.winwin7.com/soft/7021.html

实验内容

使用Jmeter对MercuryTours程序进行负载测试。
要求:
(1)熟悉Jmeter程序的功能,为登录、购买机票功能设计测试用例;
(2)利用Jmeter实施负载测试;
(3)分析测试结果;

实验要求

(1)根据题目要求运用Jmeter完成性能测试;
(2)撰写实验报告(包括测试用例、测试脚本、测试结果、测试过程中出现的错误及解决方法);

性能测试用例

标识码 1 优先级 执行时间 1分钟
用例名称 Mtours航空网站订票系统订票流程
测试目的 订票压力测试
环境要求 浏览器
测试工具 JMeter
前提条件 用户注册
负载模式和负载量 期望达到的性能指标 备注
5个用户并发操作
10个用户并发操作
20个用户并发操作
50个用户并发操作

实验步骤

使用BadBoy创建脚本

安装BadBoy

安装完后运行badboy

BadBoy创建脚本

  1. MTours航空网站本地服务开启;

  2. 打开BadBoy工具

  3. 点击工具栏上的红色圆形按钮

  4. 在地址栏中输入被测试项目的地址http://localhost:8080/Mtours。

制作订票系统的流程JMeter脚本

完成订票系统的流程

点击File导出JMeter文件

使用JMeter进行负载测试

下载JMeter

  1. 在官网下载最新版本:apache-jmeter-x.x.zip
  2. 下载完成后解压zip包,双击Jmeter解压路径(apache-jmeter-x.x\bin)下面的jmeter.bat打开Jmeter。

注意不要关闭黑框

导入BadBoy的录制脚本

二次开发操作

添加正则表达式提取器(找不到参数,实际没做)

在“http://127.0.0.1/WebTours/nav.pl”请求下右击,选择线程组—添加–后置处理器–正则表达式提取器

正则表达式提取器的设置如下图显示:

添加事务控制器

在性能测试中,事务可以看作是一系列实现共同功能的请求的集合,我们考虑性能指标时候可以针对事务进行评价。
线程组->添加->逻辑控制器->事务控制器。

添加同步点定时器(集合点)

为了实现绝对的并发效果,我们可以在脚本中添加同步点定时器,并设置释放线程的策略。

用户名的参数化(没有文件,实际没做)

参数化方式:线程组—>添加—>配置元件–>csv数据文件设置。

单击http://127.0.0.1/WebTours/login.pl,完成参数化。

添加监听器(Listener)

Jmeter 中使用监听器元件收集取样器记录的数据并以可视化的方式来呈现。Jmeter有各种不同的监听器类型,因为上HTTP请求,我们可在添加聚合报告,更为直观的查看测试结果。
右键点击Step1,在弹的菜单(添加—>监听器—>聚合报告)中选择聚合报告。

运行脚本

实验结果



心得体会

(1)使用JMeter对MercuryTours网站进性能测试。

教学资源

  • jmeter脚本录制:
    链接:https://pan.baidu.com/s/1veC3JVKvtazTsZ7Tj1oPzA
    提取码:6gso
  • Badboy与jmeter脚本录制:
    链接:https://pan.baidu.com/s/1Am53XXensCp_zKCRC0OGsw
    提取码:pcju
  • Badboy检查点和参数化:
    链接:https://pan.baidu.com/s/10j9oB0UFdo1szQEr5rHMQw
    提取码:y6kd
  • jmeter性能测试基础实战(1):
    链接:https://pan.baidu.com/s/13VGXJ16OdVRmLBCeY_AiMQ
    提取码:m3t7
  • jmeter性能测试基础实战(2):
    链接:https://pan.baidu.com/s/1qgiZCI42T8Sd1mk3Y9yiEA
    提取码:ehsq
  • jmeter断言
    链接:https://pan.baidu.com/s/1roEpoorn1qmyMUCxpEHNdg
    提取码:nufp
  • jmeter参数化:
    链接:https://pan.baidu.com/s/1-PKPNrdNOYV5H0lwV8QwIA
    提取码:034z

参考文章

badboy 下载

性能测试——JMeter脚本录制和HTTP负载测试相关推荐

  1. 云智慧压测实战分享之JMeter脚本录制实例

    在前面的<云智慧压测实战分享之JMeter工具使用初探>中我们对JMeter的功能特点和常用元件做了简单介绍,接下来说说JMeter的脚本录制.JMeter有多种录制脚本方法,其中最常见的 ...

  2. https协议谷歌浏览器使用Jmeter脚本录制

    一.http与https的区别 https协议需要到ca申请证书,一般免费证书很少,需要交费. http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议 http和ht ...

  3. 压力测试-Jmeter脚本录制方案

    使用Jmeter时在特殊场景下需要用到脚本录制的功能,本文将分享如何使用Jmeter进行脚本的录制及相关的注意事项. 准备工作: 创建基础API框架:新建测试计划-创建线程组-创建HTTP请求-创建查 ...

  4. jmeter脚本录制入门详解

    jmeter的安装部署可参考 (14条消息) 性能测试工具-JMeter简介及安装_小han的日常的博客-CSDN博客https://blog.csdn.net/weixin_50464533/art ...

  5. Jmeter脚本录制(APP)

    1. 什么是脚本录制 在进行测试的时候,可能有好多脚本或者界面需要操作测试,并且有些测试链接需要 重复多线程高并发进行测试,我们一般会针对这一些操作,进行一个脚本录制,录制 好之后,之后测试就可以在这 ...

  6. Jmeter脚本录制(Web)

    1.安装badboy脚本软件 2.打开badboy软件 3.badbody脚本录制 点击录制按钮进行脚本录制,完成打开百度,搜索自动化测试操作,然后停止,回放. 4.回放 5.导出Jmeter脚本 7 ...

  7. Jmeter脚本录制:Jmeter5.0脚本录制

    第一部分进行jmeter设置 第一步:在JMeter中添加线程组 第二步:在线程组下添加HTTP请求默认值 添加->配置元件->HTTP请求默认值,设置服务器IP和端口号 第三步:在线程组 ...

  8. JMeter脚本录制步骤

    目录 录制前操作 手动设置代理 jmeter操作步骤 添加线程组 添加录制控制器 添加HTTP代理服务器 添加HTTP请求默认值 编写HTTP请求默认值 录制中操作 启动 结束 录制后运行 整合 运行 ...

  9. Jmeter脚本录制————Badboy录制web端

    1.双击icon打开后主界面显示如下: 2.接下来我们进行Web脚本的录制, 以打开我的歌曲主页http://baidu.com为例: 我们在红框标注的输入框中输入对应url: 然后点击红框标识的录制 ...

最新文章

  1. 平均 14926 元!2021 年 5 月程序员工资统计出炉
  2. Struts 2.5.20 在Eclipse配置
  3. [YTU]_2384( 矩形类中运算符重载【C++】)
  4. linux grep 正则搜索某段时间内的日志
  5. c语言中return的作用_C语言简介
  6. 【TypeScript系列教程04】编译参数
  7. 【HDU - 2516 】取石子游戏 (Fibonacci博弈)
  8. Linux+c+线程的属性,C ++中的多线程
  9. 配置文件解析利器-Config库
  10. 思科Cisco交换机运维手册
  11. 关于java.io.FileNotFoundException: test.txt (系统找不到指定的文件。)的问题解决办法。(相对路径出错)
  12. java的setbounds_Swing-setBounds()用法-入门
  13. 路飞学院 python_路飞学院-Python爬虫实战密训班-第1章
  14. 如何理解最小相位信号就是振幅谱相同的信号中群延迟最小的那个?
  15. 学习c语言的方法类比,类比法在C语言程序设计教学中运用.doc
  16. 【python】分析当当网书籍价格、出版社、电子书版本占比数据
  17. 密立根油滴实验数据处理(基于Python)
  18. 基于WT2003H语音芯片在GPS公交车自动报站系统的应用设计方案
  19. 豆瓣引流能赚钱吗?怎么做?
  20. 入门电机系列之1认识电机

热门文章

  1. Javascript 本地图片预览
  2. 指针津逮--------浅谈从指针到“ref”
  3. 源代码管理-SVN自动更新
  4. 谈点技术吧,6万人在线每秒实时更新的解决方案
  5. html图片postmultipart,sendmail-MIMEText-MIMEImage-MIMEMultipart.py——发送带图片的HTML格式报表...
  6. gui窗口遮挡算法_软件更新丨AWTK 1.2 发布,国产开源 GUI 引擎
  7. rqt teb参数动态调试工具_16.ROS常用工具:Rviz/rqt
  8. oracle 中文查询不到,使用PLSQL查询Oracle语句中文无法匹配问题解决
  9. 计算机网络应用基础第一章试题,计算机网络应用基础第一章测试题
  10. 下一代对话系统中的关键技术(下篇)