JMeter安装与接口测试入门[通俗易懂]

JMeter安装与接口测试入门[通俗易懂]安装环境配置1、JDK版本:JDK1.8及以上;2、操作系统:JMeter可以在当前任何一个已经部署了Java的操作系统上运行,Unix(Solaris,Linux,etc)、Windows(98,NT,2000,XP,WIN7)、OpenVMSAlpha7.3+JDK安装与配置1、jdk安装:在官网下载jdk1.8版本压缩包,解压到指定文件夹即可。2、环境变量配置1)右键点击…

大家好,又见面了,我是你们的朋友全栈君。

前言

点进来的朋友你们好,虽然我们素未谋面,但对知识同样的渴求让我们在网络世界实现思想交汇!

从本文开始,我将用心写一个关于JMeter的文章系列,无论你是渴望入门,还是寻求进步,我希望你们都能从这里有所收获。

欢迎关注❤️、评论?、点赞?!

下面是目前已有的博文列表,持续更新中:

  1. JMeter安装与接口测试入门
  2. JMeter逻辑控制器
  3. JMeter配置元件
  4. JMeter操作Mysql数据库
  5. BeanShell Sampler与BeanShell断言
  6. JMeter Linux下执行测试
  7. JMeter自定义日志与日志分析

JMeter当初是为性能测试而生,与loadrunner形成竞争之势,相对于loadrunner,JMeter在性能测试方面有自己的优点:

  1. JMeter开源,而loadrunner收费。
  2. JMeter轻量级,安装包只有几十兆,安装简便。loadrunner安装包则有数个G,安装繁琐。
  3. JMeter有丰富的插件支持,扩展性非常强。
  4. 个人感觉JMeter相对于loadrunner操作简易许多。

后来,因为其便捷的关联功能、丰富的断言以及Beanshell的存在,使JMeter成为接口测试的利器。

1 JMeter安装

下载地址

各版本JMeter下载地址,本文及后续都使用的5.1.1版本,即下图中红圈中。

在这里插入图片描述

JDK安装与配置

JMeter的运行依赖于Java环境,因此在使用JMeter之前要先保证已正确安装JDK。下面以Windows系统为例,演示JDK1.8的安装过程。

  • jdk安装:在官网下载jdk1.8版本压缩包,解压到指定文件夹即可。
  • 环境变量配置
    1. 右键点击计算机图标–属性—高级系统配置—环境变量—系统变量
      在这里插入图片描述
    2. 在系统变量栏单击“新建”,变量名:JAVA_HOME,变量值:C:\Program Files\Java\jdk1.8.0_80(jdk解压目录),确定保存;
      在这里插入图片描述
    3. 再次单击“新建”,变量名:CLASSPATH,变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
      在这里插入图片描述
    4. 选择“path”,点击“编辑”,在原来值的最前面添加下面的信息:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
      在这里插入图片描述
  • 验证jdk安装是否成功,打开DOS窗口,输入java -version,出现以下字样:
    java version "1.8.0_191" Java(TM) SE Runtime Environment (build 1.8.0_191-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)

输入javac,出现列表,通过以上两个即可验证jdk已经正确安装。

JMeter安装

JMeter其实是免安装的,将下载的压缩包解压,即可使用。将jmeter.bat创建快捷方式到桌面,就可以双击图标运行JMeter了。
在这里插入图片描述
JMeter安装后,可能会会遇到一些异常,例如:

'findstr' 不是内部或外部命令,也不是可运行的程序或批处理文件。
Not able to find Java executable or version. Please check your Java installation
errorlevel=2
请按任意键继续…

或者是:
jmeter安装启动报错:Not able to find Java executable or version,Please check your Java installation
解决方案就是:环境变量PATH添加:%SystemRoot%/system32;%SystemRoot%;

2 JMeter接口测试

说起接口测试,首先要读懂接口文档,以最常见的http协议接口为例,接口文档大多是这样的:

HOST(地址):http://api.test.com

path(路径):/user/login

请求方式:POST

参数:

参数名称 参数类型 是否必填 字段说明
username String 用户名
password String 密码
device String 登录设备:web、Android、IOS

上面是一个登录接口文档,提供了请求地址、路径、请求方法和参数信息,那么怎么用JMeter按照这个接口文档调用该接口呢?请往下看。

TestPlan(测试计划)是JMeter所有组件的根节点,打开JMeter即默认有一个TestPlan,也只能有一个TestPlan。在TestPlan下添加线程组,线程组可以添加多个,线程组是相对独立的。
在这里插入图片描述
首先在线程组上右键–取样器-HTTP请求,添加了一个HTTP请求取样器,按照接口文档填入信息:
在这里插入图片描述

  • 协议:分为http和https(加密的http),测试环境一般采用http,生产环境使用https。
  • 服务器名称或IP:填入host对应的内容(api.test.com是域名,因为测试环境做了相关配置,否则使用IP)。
  • 端口号:如果服务器地址填IP,这项就要填写相应的IP,具体也看测试环境配置。
  • 路径:填入接口文档的path即可

下面用WeatherWS Web接口实际测试一下:http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?op=getSupportCityString

接口描述是这样的:

POST /WebServices/WeatherWS.asmx/getSupportCityString HTTP/1.1
Host: ws.webxml.com.cn
Content-Type: application/x-www-form-urlencoded
Content-Length: length

theRegionCode=string

在这里插入图片描述
添加【察看结果树】:
在这里插入图片描述
运行,察看结果:
在这里插入图片描述
一个简单的http接口调用就这样完成了,但接口测试还远不止这些,比如断言(响应断言和Beanshell断言)、关联等,这些内容可见后续文章。

3 问题解决

响应乱码问题

在JMeter bin目录下的jmeter.properties文件中,插入下图中语句并重启JMeter即可:
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/134913.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • FastClick遇到的坑及解决办法

    FastClick遇到的坑及解决办法最近产品妹子提出了一个体验issue——用iOS在手Q阅读书友交流区发表书评时,光标点击总是不好定位到正确的位置:如上图,具体表现是较快点击时,光标总会跳到textarea内容的尾部。只有当点击停留时间较久一点(比如超过150ms)才能把光标正常定位到正确的位置。一开始我以为是iOS原生的交互问题没太在意,但后来发现访问某些页面又是没有这种奇怪体验的。然后怀疑是否…

    2022年6月19日
    57
  • 推荐书籍:FFmpeg从入门到精通

    推荐书籍:FFmpeg从入门到精通本书是一本介绍FFmpeg的实战技术指南,全书共10章,分为两个部分。第一部分部分(第1~7章)为FFmpeg的命令行使用篇,介绍了FFmpeg的基础组成部分、FFmpeg工具使用、FFmpeg的封装操作、FFmpeg的转码操作、FFmpeg的流媒体操作、FFmpeg的滤镜操作、FFmpeg的设备操作。第二部分(第8~10章)为FFmpeg的API使用篇,介绍了FFmpeg封装部分的API使用操作、FFmpeg编解码部分的API使用操作,FFmpeg滤镜部分的API使用操作,相关操作均以实例方式进行

    2022年6月26日
    22
  • 弹框遮罩层「建议收藏」

    .back_con{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9997;

    2022年4月13日
    39
  • 哥哥[通俗易懂]

    哥哥[通俗易懂]哥哥

    2022年4月23日
    35
  • JAVA API中文在线帮助文档

    JAVA API中文在线帮助文档https://www.w3cschool.cn/java/dicthttp://www.matools.com/api/java8http://tool.oschina.net/apidocs/apihttp://www.javaweb.cc/help/JavaAPI1.6/overview-summary.html

    2022年7月26日
    29
  • java数组反转Reverse

    java数组反转Reverse三种反转数组的方法:publicclassReverseArray{publicvoidreverse(int[]arr){for(inti=0;i

    2022年6月9日
    202
  • 发表回复

    您的邮箱地址不会被公开。 必填项已用 * 标注

    关注全栈程序员社区公众号