cpn tools查看运行时间_Jmeter在Linux下的运行测试

一、JMeter

Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。

1.1、JMeter的作用

  1. 能够对HTTP和FTP服务器进行压力和性能测试, 也可以对任何数据库进行同样的测试(通过JDBC)。
  2. 完全的可移植性和100% 纯java。
  3. 完全 Swing 和轻量组件支持(预编译的JAR使用 javax.swing.*)包。
  4. 完全多线程 框架允许通过多个线程并发取样和 通过单独的线程组对不同的功能同时取样。
  5. 精心的GUI设计允许快速操作和更精确的计时。
  6. 缓存和离线分析/回放测试结果。

1.2、JMeter的高可扩展性

  1. 可链接的取样器允许无限制的测试能力。
  1. 各种负载统计表和可链接的计时器可供选择。
  1. 数据分析和可视化插件提供了很好的可扩展性以及个性化。
  1. 具有提供动态输入到测试的功能(包括Javascript)。
  1. 支持脚本编程的取样器(在1.9.2及以上版本支持BeanShell)。

在设计阶段,JMeter能够充当HTTP PROXY(代理)来记录IE/NETSCAPE的HTTP请求,也可以记录apache等WebServer的log文件来重现HTTP流量。当这些HTTP客户端请求被记录以后,测试运行时可以方便的设置重复次数和并发度(线程数)来产生巨大的流量。JMeter还提供可视化组件以及报表工具把量服务器在不同压力下的性能展现出来。

相比其他HTTP测试工具,JMeter最主要的特点在于扩展性强。JMeter能够自动扫描其lib/ext子目录下.jar文件中的插件,并且将其装载到内存,让用户通过不同的菜单调用。

二、Jmeter在Linux下的运行测试

在windows下使用Jmeter已经司空见惯了,既然Jmeter是基于JAVA的,所以就有完全的可移植性,可以在linux下运行。

2.1、安装JDK

首先安装JDK,并正确配置环境变量。

一、上传并解压jdk压缩包jdk-8u151-linux-x64.tar.gz,建议把软件都安装到/usr/local/下,如/usr/local/jdk1.8.0_151。

二、安装java环境

1、用vim编辑器打开/etc/profile文件,在文件尾部加入环境变量的定义

JAVA_HOME=/usr/local/jdk1.8.0_151/PATH=$JAVA_HOME/bin:$PATHCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport JAVA_HOMEexport PATHexport CLASSPATH

2、重启电脑,或者输入如下命令使配置立即生效

source /etc/profile

3、查看java版本

java -version

2.2、安装Jmeter

1、将Jmeter的安装包(直接使用windows下的zip压缩包都行)apache-jmeter-4.0.zip上传至Linux的/usr/local/目录下,解压。

2、编辑/etc/profile文件,配置Jmeter的环境变量

export PATH=/usr/local/apache-jmeter-4.0/bin/:$PATH

3、重启电脑,或者输入如下命令使配置立即生效

source /etc/profile

2.3、启动Jmeter

使用命令执行脚本:

jmeter -n -t /usr/local/apache-jmeter-4.0/my_threads/sfwl.jmx -l /usr/local/apache-jmeter-4.0/test.jtl &

参数说明:

-h 帮助 -> 打印出有用的信息并退出

-n 非 GUI 模式 -> 在非 GUI 模式下运行 JMeter

-t 测试文件 -> 要运行的 JMeter 测试脚本文件

-l 日志文件 -> 记录结果的文件

-r 远程执行 -> 启动远程服务

-H 代理主机 -> 设置 JMeter 使用的代理主机

-P 代理端口 -> 设置 JMeter 使用的代理主机的端口号

注意:如果未设置Jmeter的环境变量则在执行脚本的时候需要检查当前目录是否是jmeter的bin目录下

运行示意图:

6ac9c94d5a4cc37f5a5f5a4841df46c8.png

2.4、查看运行结果

1、运行结果存放在运行脚本产生的test.jtl文件中,在linux下可以通过cat、vim等命令查看该文件的内容,在windows下可以通过Notepad++直接打开该文件,如下图:

1b5082a30d1bd21a1332534c933594b8.png

2、使用Jmeter查看(注意:window下安装的Jmeter和JDK要和Linux的保持一致)

在windows系统下打开Jmeter,创建一个线程组,在线程组下添加监听器,点击界面上的浏览按钮,将导出的文件test.jtl添加进来即可看到脚本测试的报告,如下图:

b4988638981bf7ccdaf884df8975850d.png

声明:本文转自CSDN,作者yjclsx

原文链接:https://blog.csdn.net/yjclsx/article/details/81740623

著作权归原作者所有,如有侵权请联系删除,谢谢

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/542176.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

css div滚动_如何使用CSS创建可垂直滚动的div?

css div滚动Introduction: 介绍: Dealing with divs has become a regularity and divs are used for many purposes like to structure our code and to segregate our various sections of codes. Besides, we are also aware of many properties that we can im…

Linux中磁盘分区的管理

1. 本地存储设备的识别 fdisk -l真实存在的设备cat /proc/partitions系统识别的设备blkid系统可使用的设备df系统正在挂载的设备 真实存在的设备不一定可识别,识别到的的设备不一定可使用 2. 设备的挂载和卸载 1)设备名称 /dev/xdx …

游戏架构之二(转)

棋牌类游戏常用架构: 我从事过4年的棋牌类游戏开发,使用过的架构大致如上,各模块解释如下。 LoginServer: 登陆服务器,主要负责player 的登陆请求,验证player的合法性,为合法的player分配sessio…

对lvm介绍

1. 什么是LVM LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,用户在无需停机的情况下可以方便地调整各个分区大小。 lvm中的一些常见符号及意义 pv物理卷被lv命令处理过的物理分…

linux中系统修复

1. 引导文件丢失 (1)引导文件所在路径 /boot/grub2/grub.cfg 需提前知道根目录所在分区和内核版本 uname -r 查询内核版本命令 模拟问题 rm -fr /boot/grub2/grub.cfg 一不小心把这玩意儿给删了,还reboot了 完了以后机子开不了了就这情况 …

dw相对路径怎么改_密云ETL怎么收费

密云ETL怎么收费,派客动力,公司依托自有产品,整合行业资源,构建先进的数据管理解决方案,解决企业和组织的核心数据问题以及被影响的业务挑战。这种工具我都使用过,优点有:图形界面,开…

python 自动化之路 day 08_2 网络编程

本节内容 Socket介绍Socket参数介绍基本Socket实例Socket实现多连接处理通过Socket实现简单SSH通过Socket实现文件传送作业:开发一个支持多用户在线的FTP程序1. Socket介绍 概念 A network socket is an endpoint of a connection across a computer network. Today…

Elasticsearch过滤与聚合的先后顺序java实现

2019独角兽企业重金招聘Python工程师标准>>> 一、Elasticsearch的聚合 ES的聚合相当于关系型数据库里面的group by,例如查找在性别字段男女人数的多少并且按照人数的多少进行排序,在使用MySQL的时候,可以使用如下的句子 select se…

js手机号中间四位_11位手机号码隐藏中间四位数,学会Substitute函数一键搞定!...

相信许多朋友都有见过手机号码被*号隐藏中间四位数的情况。许多地方为了保护个人信息,都会将手机号的中间四位数用星号代替。如上图所示,我们需要将原来的手机号码,通过*号的方式变为隐藏后的加密模式。下面我们就来学习一下如何利用substitu…

python 整数最大_Python程序使用floor()方法查找最大整数

python 整数最大The greatest integer function is a function (real numbers function) to itself that is defined as follows: it sends any real number to the largest integer that is less than or equal to it. 最大整数函数是一个对其自身定义的函数(实数函数)&#x…

selinux对ftp的影响

1.啥是selinux 安全增强型Linux(Security-Enhanced Linux)简称selinux,它是一个Linux内核模块,也是Linux的一个安全子系统。 selinux的状态: Enforcing:强制模式,在selinux运作时,已经开始限制d…

ES6的class方法基本用法

为什么80%的码农都做不了架构师?>>> 在ES5中我们通常通过构造函数,定义并生成新对象。 例如: function Point(name,age){this.namename;this.ageage;}Point.prototype{Who:function(){return "My name is "this.name",My age…

celery的中文_celery异步任务框架

目录Celery一、官方二、Celery异步任务框架Celery架构图消息中间件任务执行单元任务结果存储三、使用场景四、Celery的安装配置五、两种celery任务结构:提倡用包管理,结构更清晰七、Celery执行异步任务包架构封装八、基本使用celery.py 基本配置tasks.py…

关于linux mv指令机制

最近在mv文件的时候,操作失误将生产服务器一个1TB的文件夹mv到了/opt/test目录,因为最后/opt/目录被沾满所以1TB的文件夹没有迁移过来,写入了30GB数据到了/opt/test目录,因为系统分区被沾满,所以把test目录给删除了。 …

数据库的管理

1. 数据库的简介 定义:数据库(Database)就是一种按数据结构来组织,存储和管理数据的仓库,其中包含数据挖掘,大数据信息的推送。 mariadb数据库管理系统是mysql的一个分支,主要由开源社区在维护&…

C#中的Dictionary字典类介绍(转载)

C#中的Dictionary字典类介绍 关键字:C# Dictionary 字典 作者:txw1958原文:http://www.cnblogs.com/txw1958/archive/2012/11/07/csharp-dictionary.html 说明 必须包含名空间System.Collection.Generic Dictionary里面的每一个元素都…

高速缓存dns

1. DNS: Domain Name System,域名系统。 万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网。他主要负责把域名和IP的相互转换,DNS运行与TCP|UDP的53端口上。 2. 高速缓存DNS:DNS服务…

Apache服务配置

1. apache 企业中常用的web服务。用来提供http://(超文本传输协议) 基础信息: 主配置目录: /etc/httpd/conf 主配置文件: /etc/httpd/conf/httpd.conf 子配置目录: /etc/httpd/conf.d/ 子配置文…

如何安装Genymotion虚拟机以及Genmotion的eclipse插件

---内容开始--- - 首先去genymotion的官网去下载其安装文件 资源下载 Genymotion官网必须注册一个账号这个账号安装之后还有用的,用户名最好用网易126邮箱注册----我下载的是2.8.0的版本(注:注册前先开个代理服务器不然页面打不开下载时最好用迅雷下载这…

squid服务配置(正向、反向代理)

代理: 就是代理网络用户去取得网络信息。 Squid是一种用来缓冲Internet数据的软件。安装Squid服务实现代理缓存服务器功能。 正向代理:意思是一个位于客户端和原始服务器之间的服务器,为了从原始服务器取得内容,客户端向代理发送一…