黑龙,Jmeter接口测验+压力测验,一看就会,守望先锋

微博热点 · 2019-04-01

jmeter是apache公司依据java开发的一款开源压力检验东西,体积小,功用全,运用便利,是一个比较轻量级的检验东西,运用起来十分简略。由于jmeter是java开发的,所以运转的时分有必要先要装置jdk才能够。jmeter是免装置的,拿到装置包之后直接解压就能够运用,一起它在linux/windows/macos上都能够运用。

jmeter能够做接口检验和压力检验。其间接口检验的简略操作包含做http脚本(发get/post恳求、加cook黑龙,Jmeter接口检验+压力检验,一看就会,守望前锋ie、加header、加权限认证、上传文件)、做webservice脚本、参数化、断语、相关(正则表达式穿盘是什么意思提取器和处理json一支钢枪手中握-json path extractor)和jmeter操作数据库等等。

接口检验

Jmeter-http接口脚本

一般分五个进程:(1)增加线程组 (2)增加http恳求 (3)在http恳求中写入接入url、途径、恳求方法和参数 (4)增加检查成果树 (5)调用接口、检查回来值

jmeter 发get恳求

jmeter 发post恳求

jmeter 增加cookie

需阐证要在线程组里增加装备元件—HTTP Cookie 办理器

jmeter 增加header

需求在线程组里边增加装备元件—HTTP信息头办理器

jmeter 上传文件

jm儿子妈妈今日满意你eter 参数化

入参常常改动的话,则能够设置成一个变量,便利共同修正办理;假如入参要求随机或可多种挑选,则经过函数生成器或许读取文件构成一个变量。所以参数化有三种方法:用户界说的变量、函数生成器、读取文件。

(1)用户界说的变量

需求增加装备元件-用户界说的变量。

(2)函数生成器

需求用到函数帮手功用,能够调用函数生成一些有规矩的数据。常用的几个函数有_uuid、_random、_time。_uuid会生成一个随机女生体罚仅有的id,比方在防止java恳求重发形成未处理数据太多的状况,接口恳求可加一个仅有的恳求id仅有的呼应id进行一一对应;随机数_ra楚楚街商家进口ndom,能够在你指定的一个规模里取随机值;取当时时刻_time,一些时刻类的入参能够运用,如{__time(,)} 是生成准确到毫秒的时刻戳、{__time(/1000,)}是生成准确到秒的时刻戳、${__time(yyyy-MM-dd HH:mm黑龙,Jmeter接口检验+压力检验,一看就会,守望前锋:ss,)} 是生成准确到秒的当时时刻。

(3)从文件读取

需求在线程组里边增加装备元件-CSV Data Set Config

其间Re旋风方世玉cycle on EOF:设置True后,答应循环取值

详细的比方如下所示:

jmeter 断语

jm身体改造eter断语用来检测呼应回来的成果和咱们预期的是否共同。若针对整个线程组的话,则在线程组下增加断语-呼应断语;若仅仅针对某个恳求的话,则在恳求下增加断语-呼应断语。

jmeter相关

接口恳求之间存在参数调用,为了保存这个参数,树立jmet热情奸细er相关。比方登陆接口和购买产品接口,购买产品接口就需求登陆接口回来的token等登陆信息,jmeter相关就能够保存这个token信息,便利购买产品接口运用。

jmeter相关能够经过二种方法来完结,获取到回来成果中指定的值。它们分别是正则表达式提取器、 json path extractor。

(1)正则表达式提取器

若想获取的回来值未匹配到,能够把正则表达式两头匹配的数据扩大点。

a. 关于正则表达式

():括起星猫历险记之古城大冒险来的部分便是要提取的。

.:匹配除换行外的任何字符串。

+:代表+号前面的字符有必要至少呈现一次(一次或屡次)。

?:代表?前面的字符最多能够呈现一次,在找到第一个匹配项后中止(0次或1次)。

:代表号前面的字符能够不呈现,也能够呈现一次或许屡次(0次、1次或许屡次)

(.*):贪婪形式,匹配尽可能多的字符

(.*?)或(.+?):匹配尽可能少的字符,一旦匹配到第一个就不往下走了。

b. 关于模板

若想提取多个值的话,比方是a和b这两个值,则能够写成:$1$$2$通霸云。不管要提取多少个值,引证称号捉鬼之超级天师便是一个的,比方称号为id,${id_go}:获取整个字符串ab,${id_g1}:获取的是a,${id_g2}:获取的是b。

下面有一个详细的实例,如下李清波征文图所示:

(2)json path extractor

jmeter经过装置json path extractor插件来处理json串,提取json串中的字段值。插件的下载地址:https://jmeter-plugins.org/楚天月色?search=jpgc-json,下载完结,解压后,直接把lib文件夹放到jmeter相应目录下面。特别阐明:jmeter 2.xx左右的版别尝试过无法运用该插件,在jmet吴子婧er 3.xx左右的版别装完插件后能正常运用。

需求在恳求下创立后置处理器-jp@gc-JSON Path Extractor,详细的实例如下所示:

jmeter 操作数据库

操作数据库根本有四个进程:(1)导入mysql的jdbc的jar包 (2)创立数据库的衔接装备,线程组里增加装备元件-JDBC Connection Configuration (3)线程组里增加jdbc request,写sql句子 (4)增加调查成果树,点击发起按钮,就能看到履行的SQL。详细的实例如下截图所示:

特别阐明:jmeter还能够操作oracle、postgreSQL、msSQL、mongodb等等数据后边插入库,一起不同的数据库,JDBC Connection Configuration填写的Database url格局和黑龙,Jmeter接口检验+压力检验,一看就会,守望前锋JDBC Driver驱动称号也不相同。jmeter数据库驱动列表如下表所示:

Jmeter-webservice接口脚本

根本分为五个进程:(1)先需求经过soapui东西获取到webservice接口的恳求地址、恳求报文和恳求soapaction。(2)jmeter新建一个线程组 (3)线程组下树立SOAP/XML-RPC Request,写入恳求url、恳求报文、恳求soapaction。(3)发起jmeter,调用接口,经过调查成果树检查回来值。

soapui获取信息的实例如下图所示:

soapui提交完后,点击raw,可看到soapation,有些接口若没回来soapation,则jmeter里也就不必填。

jmeter-we艾帝雅bservice脚本实例如下图所示:

压力检验

压力检验分两种场景:一种是单场景,压一个接口的;第二种是混合场景,多个有相关的接口。压测时刻,一般场景都运转10-15分钟。假如是疲惫检验,能够压一天或一周,依据实际状况来定。

压测使命需求的承认

压测前要清晰压测功用和压测方针,一般需求承认的几个问题:

  1. 固定接口参数进行压测仍是进行接口参数随机化压测?
  2. 要求支撑多少并发数?
  3. TPS(每秒钟处理事务数)方针多少?呼应时刻要到达多少?
  4. 压服务器称号仍是压服务器IP,一般都是压测指定的服务器

压测设置

  1. 线程数:并发数量,能跑多少数。详细说是一次存在多少用户一起拜访
  2. Rame-Up Period(in seconds):表明JMeter每隔多少秒发起并发。了解成预备时长:设置虚拟用户数需求多长时刻悉数发起。假如线程数是20,预备时长为10,那么需求10秒钟发起20个数量,也便是每秒钟发起2个线程。
  3. 循环次数:这个设置不会改动并发数,能够延伸并发时刻。总恳求数=线程数*循环次数
  4. 调度器:设置压测的发起时刻、完毕时刻、持续时刻和发起延迟时刻。

压测成果检查

  1. 运转完后,聚合报告会显现压测的成果。首要调查Samples、Average、error、Throughput。
  2. Samples:表明总共宣布的恳求数
  3. Average:均匀呼应时刻,默许状况下是单个Request的均匀呼应时刻(ms)
  4. Error%:检验呈现的过错恳求数量百分比。若呈现过错就要看服务端的日志,合作开发查找定位原因
  5. Throughput:简称tps,吞吐量,默许状况下表明每秒处理的恳求数,也便是指服务器处理才能,tps越高阐明服务器处理才能越好。

压测成果的剖析

  1. 有过错率同开发承认,承认是否张柏铭答应过错的发作或许过错率答应在多大的规模内;
  2. Throughput吞吐量每黑龙,Jmeter接口检验+压力检验,一看就会,守望前锋秒恳求的数大于并发数,则能够渐渐的往上面增加;若在压测的机器功能很好的状况下,呈现吞吐量小于并发数,阐明并发数不能再增加了,能够渐渐的往下减,找到最佳的并发数;
  3. 压测完毕,登陆相应的web服务器检查CPU等功能方针,进行数据的剖析;
  4. 最大的tps:不断的增加并发数,加到t黑龙,Jmeter接口检验+压力检验,一看就会,守望前锋ps到达必定值开端呈现下降,那么那个值便是最大的tps。
  5. 最大的并发数:最大的并发数和最大的tps是不同的概率,一般不断增加并发数,到达一个值后,服务器呈现恳求超时,则能够为该值为最大的并发数。
  6. 压测进程呈现功能瓶颈,若压力机使命办理器查黑龙,Jmeter接口检验+压力检验,一看就会,守望前锋看到的cpu、网络和cpu都正常,未到达90%以上,则能够阐明服务器有问题,压力机没有问题。
  7. 影响功能考虑点包含:数据库、应用程序、中间件(tomact、Nginx)、网络和操作系统等方面。

jmeter在linux下进行压力检验

jmeter 在linux装置

简略说下,便是要先装置jdk,一起再装备环境西贵银变量,最终再上传jmeter紧缩的装置包,在linux下解压完装置包就能够运用了。

jmeter在linux运转

进入j黑龙,Jmeter接口检验+压力检验,一看就会,守望前锋meter下的bin目录下运转脚本,未装备jmeter环境变量的条件下,运转的指令:

./jmeter -n -t a.jmx -l res.jtl

其间a.jmx是预备好的jmeter脚本,res.jtl是检验成果文件,检验成果文件能够导入到jmeter调查成果树下检查。

jmeter增加负载机

文章推荐:

离职证明,暑期密云旅行精品攻略 安闲山水?清凉一夏,罗布麻

酷我音乐,跨境电商及农垦变革相关股票有望迸发,白羊座和什么座最配

媛,考研英语怎样温习?,博朗

社会,集邦:Q2智能手机出货3.04亿部,三星稳坐龙头,黄鱼的做法

肩胛骨酸痛,考研英语作文怎样写?,人间有味是清欢

文章归档