背景

整理jmeter脚本编写流程,注意事项,常用组件,常见问题。

参看链接:https://www.cnblogs.com/pwj2lgx/p/10282422.html

参看:processOn思维导图

一、介绍

1、是什么

Apache JMeter 是 Apache 组织开发的基于 Java 的压力测试工具。用于对软件做压力测试,它最初被设计用于 Web 应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter 能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter 允许使用正则表达式创建断言。

Apache jmeter 可以用于对静态的和动态的资源(文件,Servlet,Perl 脚本,java 对象,数据库和查询,FTP 服务器等等)的性能进行测试。它可以用于对服务器、网络或对象模拟繁重的负载来测试它们的强度或分析不同压力类型下的整体性能。你可以使用它做性能的图形分析或在大并发负载测试你的服务器/脚本/对象。

2、自己理解

与postman简比较。涵盖的测试场景写起来更清晰,有条理。还可以直接预期与比对返回结果是否正确。
与程序中写的全流程测试有异曲同工之妙。
但是使用的场景时不同的,postman只是用作请求。
而jmeter确实对程序的并发、压力及场景进行了全方位的全流程测试。

二、使用场景

参看链接:https://www.cnblogs.com/pwj2lgx/p/10282422.html

三、常用组件

参看processOn思维导图。

四、安装及使用

1、安装

安装包

2、启动

3、路径问题

jmeter参数化----绝对路径&相对路径
(1) 绝对路径:就是文件存在的路径(通过浏览选择文件)
(2)相对路径:指数据文件(bat/txt/csv)相对于当前执行的.jmx脚本文件的路径
./ 代表当前所在的目录。
../ 代表上一层目录。
/ 代表根目录。(jmeter安装路径bin所在盘的根路径)。

4、使用

jmeter测试流程:下述功能均通过jmeter的不同的组件实现。
1、配置请求参数:IP,请求头信息,数据库地址
2、请求参数:组织请求参数:从数据库查询,自己组织,赋值请求参数给vars。
3、组织测试场景:
【1】赋值入参
【2】预期返回结果,设置响应断言:用来判断是否请求成功。
【3】提取返回的数据信息
【4】比对返回结果是否与数据库一致(这里需要编写脚本,很多时候并不是简单的查询返回,不能将返回结果直接与数据库的查询结果比较,这里就需要写脚本了)。
4、可以参看processOn中的测试流程整理,并参看以前的脚本,通用工具类中有对jmeter脚本的测试代码。

五、常见问题

1、出现问题的解决思路

查看问题节点,锁定问题位置;

锁定问题是否是程序bug;如果是程序问题,调整程序,否则调整jmeter脚本;

查看是否导入了所有需要的jar包;

查看路径是否正确;

查看参数组织时的数据格式是否正确;

取数的jmeter语言格式不对;

脚本中的错误,可以通过打印log日志或者赋值公共变量vars进行锁定问题位置。

2、配合postman一起使用锁定问题

3、中文乱码

解决:打开jmeter.properties:放开 jsyntaxtextarea.font.family=Hack
 
 
 
 
 
 
 
 

jmeter测试流程整理的更多相关文章

  1. jenkins 构建执行jmeter测试流程

    性能测试使用maven工程说明1.依赖尽量用maven依赖管理2.添加jmeter maven依赖 <dependency> <groupId>org.apache.jmete ...

  2. 一个最简单的JMeter测试流程

    环境:     JMeter   3.3 JDK 1.8 首先下载JMeter安装包  可以去官网下载. http://jmeter.apache.org/ 然后选择Download Windows系 ...

  3. 【NO.13】Jmeter - 在Linux整理和计算测试结果

    我们现在描述的是:在Linux系统使用Jmeter执行性能测试. 所以当执行完测试以后,就要计算一下测试结果,反馈给开发人员嘛. 在Linux系统使用Jmeter执行性能测试都包含哪些步骤,来,回顾一 ...

  4. APP测试流程梳理

    APP测试流程梳理 1 APP测试基本流程 1.1流程图 1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试 ...

  5. 互联网App应用程序测试流程及测试总结

    互联网App应用程序测试流程及测试总结 1. APP测试基本流程 1.1流程图 仍然为测试环境 Pass 1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日 ...

  6. 移动app传统测试流程优化

    [本文出自天外归云的博客园] 概述 在传统的软件测试流程中,每一期需求从开发到上线都要经历从需求分析与评审.测试用例评审.开发.测试.发布的流程.其中测试包含了后台测试.前端web测试.客户端测试.后 ...

  7. jmeter 测试websocket接口(一)

    jmeter 测试websocket接口时,需要对jmeter添加测试websocket的jar包. 下载地址: https://download.csdn.net/download/qq_14913 ...

  8. web测试流程的总结及关注点

    项目的测试流程大只包含的几个阶段:立项.需求评审.用例评审.测试执行.测试报告文档 一.立项后测试需要拿到的文档 1.需求说明书 2.原型图(及UI图) 3.接口文档 4.数据库字典(表的数量.缓存机 ...

  9. Jmeter测试普通java类说明

    概述 Apache JMeter是Apache组织开发的基于Java的压力测试工具.本文档主要描述用Jmeter工具对基于Dubbo.Zookeeper框架的Cassandra接口.区块链接口进行压力 ...

随机推荐

  1. 【Azure 应用服务】Azure Web App的服务(基于Windows 操作系统部署)在被安全漏洞扫描时发现了TCP timestamps漏洞

    问题背景 什么是TCP timestamps(TCP 时间戳)? The remote host implements TCP Timestamps, as defined by RFC1323 (h ...

  2. liunx:网络命令

    现系统的学习一下Web渗透相关的命令 ping ping 命令是用来测试TCP/IP 网络是否畅通或者测试网络连接速度的命令,对确定网络是否正确连接,以及网络连接的状况十分有用.简单的说,ping就是 ...

  3. 一起来踩踩 Spring 中这个循环依赖的坑

    1. 前言 2. 典型场景 3. 什么是依赖 4. 什么是依赖调解 5. 为什么要依赖注入 6. Spring的依赖注入模型 7. 非典型问题 参考资料 1. 前言 这两天工作遇到了一个挺有意思的Sp ...

  4. python django中restful框架的使用

    在使用django进行前后台分离开发时通常会搭配django-rest-framework框架创建RESTful风格的接口API.框架介绍及版本要求可参考官方地址:https://www.django ...

  5. Redis:我是如何与客户端进行通信的

    江湖上说,天下武功,无坚不摧,唯快不破,这句话简直是为我量身定制. 我是一个Redis服务,最引以为傲的就是我的速度,我的 QPS 能达到10万级别. 在我的手下有数不清的小弟,他们会时不时到我这来存 ...

  6. xshell连接时报错:Could not connect to '192.168.2.125' (port 22): Connection failed.

    解决思路: 1.首先用主机ping下虚拟机IP,看是否能ping通 2.如果ping不通就看虚拟机防火墙是否开启,service iptables status [root@mysql ~]# ser ...

  7. 初学springboot

    现在总是与数据库和前端打交道,让我觉得好厌烦,还是喜欢敲代码.最近问了几个朋友,都说潮流要学springCloud,然后学springCloud又要先学springboot,所以这段时间我会慢慢把sp ...

  8. RobotFramework + Python 自动化入门 一 (从这里开始)

    一.环境搭建 1. 安装Python Python3会自动配置path,安装pip工具(python包安装和管理工具) 2. 安装robotframework library cmd窗口安装命令: p ...

  9. 高速数字逻辑电平(8)之LVDS差分信号深度详解

    原文地址点击这里: LVDS(Low-Voltage Differential Signaling ,低电压差分信号)是美国国家半导体(National Semiconductor, NS,现TI)于 ...

  10. 微信获取信息发生错误(两个access_token的区别),错误代码:40001,说明:invalid credential, access_token is invalid or not latest hints

    微信有两个access_token,一个是基础access_token,一个是网页授权access_token. 想要获取不带unionid的用户信息(以下链接)使用基础access_token ht ...