前言

使用jmeter做压测的时候,在windows上不太稳定,所有一直在linux服务器上使用jmeter做压力测试。

本篇记录下linux上搭建jmeter环境,以及运行jmeter脚本,查看报告。

相关环境:

java 1.8

jmeter 5.1.1

java环境

先在Linux上安装java环境,安装1.8.0版本,先查找java相关的列表

yum -y list java*

  1. [root@VM_0_2_centos ~]# yum -y list java*
  2. Loaded plugins: fastestmirror, langpacks
  3. Determining fastest mirrors
  4. Available Packages
  5. java-1.6.0-openjdk.x86_64 1:1.6.0.41-1.13.13.1.el7_3 os
  6. java-1.6.0-openjdk-demo.x86_64 1:1.6.0.41-1.13.13.1.el7_3 os
  7. ...
  8. java-1.7.0-openjdk.x86_64 1:1.7.0.231-2.6.19.2.el7_7 updates
  9. java-1.7.0-openjdk-accessibility.x86_64 1:1.7.0.231-2.6.19.2.el7_7 updates
  10. ...
  11. java-1.8.0-openjdk.i686 1:1.8.0.222.b10-1.el7_7 updates
  12. java-1.8.0-openjdk.x86_64 1:1.8.0.222.b10-1.el7_7 updates
  13. ...

安装java-1.8.0-openjdk相关的文件

yum -y install java-1.8.0-openjdk*

安装完成后环境变量自动已经生效了,输入java -version查看版本号

java -version

  1. [root@VM_0_2_centos ~]# java -version
  2. openjdk version "1.8.0_232"
  3. OpenJDK Runtime Environment (build 1.8.0_232-b09)
  4. OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode)
  5. [root@VM_0_2_centos ~]#

安装jmeter

在jmeter官网https://jmeter.apache.org/下载jmeter的zip安装包,下载完成后传到linux上任意目录,比如我的是/root/jmeter。

使用unzip命令解压zip文件,如果没有安装过unzip,先yum安装下

yum -y install unzip

  1. [root@VM_0_2_centos ~]# mkdir jmeter
  2. [root@VM_0_2_centos ~]# cd jmeter/
  3. [root@VM_0_2_centos jmeter]# pwd
  4. /root/jmeter
  5. [root@VM_0_2_centos jmeter]# yum -y install unzip
  6. [root@VM_0_2_centos jmeter]# ll
  7. total 58292
  8. -rw-r--r-- 1 root root 59684716 Oct 31 22:16 apache-jmeter-5.1.1.zip
  9. [root@VM_0_2_centos jmeter]# unzip apache-jmeter-5.1.1.zip

使用unzip 解压.zip 文件

unzip apache-jmeter-5.1.1.zip

解压完成后,接下来vi编辑/etc/profile文件,设置环境变量,在文件底部编辑

export PATH=/root/jmeter/apache-jmeter-5.1.1/bin/:$PATH

接下来source执行/etc/profile文件让环境变量生效

source /etc/profile

输入jmeter -v能看到内容说明安装成功了

jmeter -v

  1. [root@VM_0_2_centos jmeter]# cd apache-jmeter-5.1.1/
  2. [root@VM_0_2_centos apache-jmeter-5.1.1]# cd bin
  3. [root@VM_0_2_centos bin]# pwd
  4. /root/jmeter/apache-jmeter-5.1.1/bin
  5. [root@VM_0_2_centos bin]# vi /etc/profile
  6. # 底部编辑export PATH=/root/jmeter/apache-jmeter-5.1.1/bin/:$PATH
  7. [root@VM_0_2_centos bin]# source /etc/profile
  8. [root@VM_0_2_centos bin]# jmeter -v
  9. Oct 31, 2019 10:24:25 PM java.util.prefs.FileSystemPreferences$1 run
  10. INFO: Created user preferences directory.
  11. _ ____ _ ____ _ _ _____ _ __ __ _____ _____ _____ ____
  12. / \ | _ \ / \ / ___| | | | ____| | | \/ | ____|_ _| ____| _ \
  13. / _ \ | |_) / _ \| | | |_| | _| _ | | |\/| | _| | | | _| | |_) |
  14. / ___ \| __/ ___ \ |___| _ | |___ | |_| | | | | |___ | | | |___| _ <
  15. /_/ \_\_| /_/ \_\____|_| |_|_____| \___/|_| |_|_____| |_| |_____|_| \_\ 5.1.1 r1855137
  16. Copyright (c) 1999-2019 The Apache Software Foundation
  17. [root@VM_0_2_centos bin]#

启动jmeter脚本测试

首先保证脚本在你本地电脑调试通过了,保存测试计划为Test Plan.jmx

脚本文件(Test Plan.jmx)导入linux服务器上,执行以下命令启动测试计划

jmeter -n -t Test\ Plan.jmx -l testplan.jtl

参数说明:

  • -n 表示以no gui方式运行测试计划
  • -t 表示测试计划,后面跟测试计划名称, 有空格的话用\空格表示
  • -l表示测试结果,后面跟测试结果文件名称,后缀是.jtl文件

查看报告文件

测试结束后导出testplan.jtl文件,在本地jmeter上查看运行结果

jmeter压测学习2-linux运行jmeter环境的更多相关文章

  1. jmeter压测学习1-window环境准备与案例

    前言 最近用jmeter做一些接口的压力测试,记录下使用过程中遇到的一些问题. 在使用window机器做并发压测的时候,发现并发数设置100的时候,会出现报错:java.net.SocketExcep ...

  2. jmeter压测学习8-压测带token的接口

    前言 工作中我们需要压测的接口大部分都是需要先登陆后,带着token的接口(或者带着cookies),我们可以先登陆获取token再关联到下个接口. 比如我现在要压测一个修改用户的个人信息接口,每个用 ...

  3. jmeter压测学习9-响应断言

    前言 使用jmeter做接口压测的时候,如何能保证接口的每次返回结果都是我们预期的呢?这就需要添加检查点,也就是添加断言. 添加断言就是为了检查返回的结果与我们的预期是一致的,不用去一个个检查结果. ...

  4. jmeter压测学习12-设置持续压测时间(调度器的使用)

    前言 使用jmeter 做压测的时候,希望对一个接口持续压测 10 分钟或者半小时,可以使用调度器设置持续压测时间. 设置样本总数 压测方式有2种,一种是设置线程组和循环次数,这样可以设置一个样本总数 ...

  5. jmeter压测学习7-登录参数化(CSV 数据文件设置)

    前言 我们在压测登录接口的时候,如果只用一个账号去设置并发压测,这样的结果很显然是不合理的,一个用户并发无法模拟真实的情况. 如果要压测登录接口,肯定得准备几百,甚至上千的账号去登录,测试的结果才具有 ...

  6. Jmeter压测学习6---登录参数CSV

    前言 我们在压测登录接口的时候,如果只用一个账号去设置并发压测,这样的结果很显然是不合理的,一个用户并发无法模拟真实的情况.如果要压测登录接口,肯定得准备几百,甚至上千的账号去登录,测试的结果才具有可 ...

  7. jmeter压测学习4-正则表达式提取

    前言 上一个接口返回的token作为下个接口的入参,除了前面一篇讲到的用json提取器提取,也可以用正则提取. json提取器只能提取json格式的数据,正则可以匹配任意的返回. 我现在有一个登陆接口 ...

  8. jmeter压测学习3-提取json数据里面的token参数关联

    前言 现在很多接口的登录是返回一个json数据,token值在返回的json里面,在jmeter里面也可以直接提取json里面的值. 上一个接口返回的token作为下个接口的入参. 案例场景 我现在有 ...

  9. Jmeter压测学习1—第一个项目:登录

    我用的是我们公司的测试环境练习的 网址:http://****:9000/login.html  账号是admin 密码:123456 一.打开Jmeter 找到安装目录:bin->Jmeter ...

随机推荐

  1. 实现简单的AOP前置后置增强

    AOP操作是我们日常开发经常使用到的操作,例如都会用到的spring事务管理.今天我们通过一个demo实现对一个类的某一个方法进行前置和后置的增强. //被增强类 public class PetSt ...

  2. 测试效率加倍提升!shell 高阶命令快来 get 下!

    背景 目前大部分的项目都是部署在Linux系统上,作为测试,掌握常用Linux命令是必须的技能.很多的工作了好几年的测试人员可能还只会简单的ls.cd.cat等等这些命令,这些命令是可以应付工作的大部 ...

  3. Java8 新特性 方法引用

    什么是方法引用   方法引用可以被看作仅仅调用特定方法的Lamdba表达式的一种快捷方式.比如说Lamdba代表的只是直接调用这个方法,最好还是用名称来调用它,可不用用对象.方法名(),方法引用,引用 ...

  4. fiddle4 弱网测试

    下载:https://www.telerik.com/download/fiddler/fiddler4 参考:https://blog.csdn.net/qq_28905427/article/de ...

  5. 【性能优化】一文学会Java死锁和CPU100%问题的排查技巧

    原文链接: 00 本文简介 作为一名搞技术的程序猿或者是攻城狮,想必你应该是对下面这两个问题有所了解,说不定你在实际的工作或者面试就有遇到过: 第一个问题:Java死锁如何排查和解决? 第二个问题:服 ...

  6. docker搭建etcd集群环境

    其实关于集群网上说的方案已经很多了,尤其是官网,只是这里我个人只有一个虚拟机,在开发环境下建议用docker-compose来搭建etcd集群. 1.拉取etcd镜像 docker pull quay ...

  7. ELK学习笔记之Kibana安装配置

    Kibana 是一个开源的分析和可视化平台,是ELK的重要部分.Kibana提供搜索.查看和与存储在 Elasticsearch 索引中的数据进行交互的功能.开发者或运维人员可以轻松地执行高级数据分析 ...

  8. C#程序计算N阶行列式的值及N元一次方程组

    C#程序计算N阶行列式的值及N元一次方程组 用了挺长时间自行完成了C#程序计算N阶行列式的值及N元一次方程组.由于自己没有在网上查阅其他资料,所以只能硬着头皮用最朴素的思想和基础的算法进行编程.在给出 ...

  9. SQL根据指定节点ID获取所有父级节点和子级节点

    --根据指定节点ID获取所有子节点-- WITH TEMP AS ( SELECT * FROM table_name WHERE Id=' --表的主键ID UNION ALL SELECT T0. ...

  10. SQL Server 2017 下载及安装详细教程

    SQL Servicer 2017 下载及安装 1)下载安装SQLServer 2)安装SQLServer management Studio. 一.     下载及安装SQLServer 下载链接( ...