以getObjectByCode接口为例,用jmeter2.13来进行接口测试

测试前准备:
测试工具及版本:jmeter 2.13 r1665067(须包含__MD5函数)
示例接口:8.1根据单品编码查询上架状态的单品详情
接口方法:/single/v1/getObjectByCode
1.准备jmeter免安装包,把...\bin\jmeter.bat添加到桌面快捷方式。
2.点击电脑桌面jmeter快捷方式,进入jmeter界面。界面默认会有一个测试计划和一个工作台,测试计划下默认会有一个线程组。
3.测试计划命名为商品服务,右击测试计划->添加->Threads(Users)->线程组,新建一个线程组,线程组命名为根据单品编码查询上架状态的单品详情。
4.在线程组下添加HTTP请求,路径为右击“根据单品编码查询上架状态的单品详情”->添加->Sampler->HTTP请求。
5.根据wiki的“根据单品编码查询上架状态的单品详情”接口文档和环境文档在HTTP请求界面填写详细信息。
5.1在Web服务器填写
服务器名称或IP:172.18.0.120              端口号:7989
5.2在HTTP请求填写
Implementation:HttpClient4                方法:POST
路径:/single/v1/getObjectByCode
5.3在请求参数区域,点击“添加”按钮添加请求参数
请求参数列表如下:
名称               值
appId            ${appId}
channel         ${channel}
channelIp      ${channelIp}
code             ${code}
t                   ${time}
terminalType  ${terminalType}
h ${__MD5(appId=${appId}&channel=${channel}&channelIp=${channelIp}&code=${code}&t=${time}&terminalType=${terminalType}&appKey=b320de0549a24ff6995dc0e2c38ff491,h)}
  注意:
请求的所有参数,需要根据参数名=参数值的格式,按照字符字典顺序(asscii值大小)排序,若遇到相同首字符,则判断第二个字符,以此类推,待签名字符串需要以“参数名1=参数值1&参数名2=参数值2&..&参数名N=参数值N”的规则进行拼接。
在对请求的参数做签名时,对于请求参数列表中那些可空的参数,如果选择使用它们,那么这些参数的参数值必须不能为空或空值。否则请从参数列表中移除参数值为空的参数键值对。
在对请求的参数做签名时,这些参数必须来源于请求参数列表,并且去除列表中的参数h。
用签名密钥(appKey)对请求参数字符串MD5算法进行签名后,将得到的摘要添加到请求参数字符尾部,签名字符串与请求参数字符串之间用&分隔。
6.在线程组下添加用户参数,路径为右击“根据单品编码查询上架状态的单品详情”->添加->前置处理器->用户参数。
7.把time参数化,在用户参数界面点击添加变量,在“名称”填写time,在“用户_1”内填写${__time(/1000,)}。
这样做的目的是保证请求参数中的t的值与MD5加密的t值保持一致。
8.添加CSV文件,路径为右击“根据单品编码查询上架状态的单品详情”->添加->配置元件->CSV Data Set Config。

9.在CSV Data Set Config界面填写文件名、编码格式、参数名、分隔符,其它的取默认值。
注意:jmx文件和.txt(.csv)文件须放在同一目录。示例中的jmx文件和CSV文件放在D:\apache-jmeter-2.13\testplan,与load runner不同的是jmeter不判断字段名,所以如果数据文件带有字段名称就要删除字段名称所在的第一行,分隔符不填写时以,分隔,填写时以填写的符号进行分隔。
Filename: getObjectByCode.txt/getObjectByCode.csv
File encoding:utf-8
Variable Names(comma-delimited): appId,channel,channelIp,code,terminalType
Delimiter(use ‘\t’ for tab):,
10.在getObjectByCode.txt文件中填写有代表性的请求参数的值,包括正常值、异常值、空值。
11.getObjectByCode.txt文件中有12条请求参数值,设置循环次数为12,点击“根据单品编码查询上架状态的单品详情”,设置循环次数为12,其它的取默认值。
12.添加察看结果树,路径为右击“商品服务”->添加->监听器->察看结果树。
13.点击启动按钮(绿色三角形),执行接口测试。
14.如果有多个线程组时,方便更清楚地查看结果,可以选择禁用其它线程组,启用当前线程组。
15.点击察看结果树->设置响应数据显示格式为JSON->点击任意一个HTTP请求->点击响应数据,这样可以查看结果。
点击请求可以查看请求的参数是否正确。
点击清除和清除全部按钮都可以清除结果。
16.去测试数据库(172.18.1.149)查询HWG_PRT_SINGLE表,验证jmeter响应数据是正确:参数的数量、参数的值。
对应SQL命令为:SELECT * FROM HWG_PRT_SINGLE WHERE HWG_PRT_SINGLE.`SINGLE_CODE`='S0002938490'
17.jmeter接口测试过程中,可以在172.18.0.120上查看对应日志。对应的命令为:
cd /home/tomcat/tomcat-product/logs
tail -f catalina.out

转载于:https://www.cnblogs.com/camilla/p/7127015.html

Jmeter接口测试实例图文示例相关推荐

  1. (转)http接口测试——Jmeter接口测试实例讲解

    转载地址:http://my.oschina.net/hellotest/blog/512482 一.测试需求描述 1. 本次测试的接口为http服务端接口 2. 接口的主要分成两类,一类提供给查询功 ...

  2. Jmeter接口测试实例讲解

    一.测试需求描述 1. 本次测试的接口为http服务端接口 2. 接口的主要分成两类,一类提供给查询功能接口,一类提供保存数据功能接口,这里我们举例2个保存数据的接口,因为这两个接口有关联性,比较有代 ...

  3. Jmeter接口测试实例

    一.关于Jmeter接口测试 选择使用Jmeter的原因:与其他工具或者框架的比对 - Postman 和 HttpRunner Jmeter本身适合做性能压测,进行接口测试时能够在测试计划中编写测试 ...

  4. jmeter接口测试实例-关联

    一.关联 关联就是讲获取到返回的值保存起来,给别的请求使用,或者做一些其他的处理. 二.登录.充值金币实例 说明: 充值金币,必须添加用户的cookie,cookie需从登录接口中获取: 1.接口文档 ...

  5. Jmeter接口测试实战分享,你一定要知道的问题总结!

    Jmeter是一款性能测试工具,因轻量级.开源.社区接受度高.容易入门等优点,也被测试人员广泛用于做接口测试.在使用Jmeter做较大规模.复杂场景的接口测试时,往往会遇到一些困难.阅读本文你将了解: ...

  6. python---简单的接口测试实例

    我们可以用Jmeter做接口测试,但是呢个人觉得那个有点局限性,用python就灵活很多, 可以按自己的思路来构建比较灵活,下面给大家介绍一个简单的接口测试实例. 我们的思路如下: 首先我们要弄清楚我 ...

  7. 【全栈接口测试进阶系列教程】入门到入职的jmeter接口测试工具实战,接口测试步骤,正则表达式jsonpath,断言,接口加密,beanshell,jdbc,jmeter+ant+jenkins

    目录 [本文简介看之前请详细的看完介绍] 本文是全网首发的[全栈接口测试进阶系列教程]jmeter接口测试工具从入门到入职, 接口系列包含 接口测试系列包含所有的接口测试工具入门到入职,如果你喜欢的话 ...

  8. JMeter 接口测试-if控制器

    今天是小雪节气: 小雪是二十四节气中的第20个.起点于每年公历11月22日或23日,太阳位于赤纬-20°16',到达黄经240°. JMeter 接口测试-if控制器 使用场景: 当业务场景是用户登录 ...

  9. Jmeter接口测试-if控制器

    点击箭头处"蓝色字",关注我哦!! 小雪是二十四节气中的第20个.起点于每年公历11月22日或23日,太阳位于赤纬-20°16',到达黄经240°. JMeter 接口测试-if控 ...

最新文章

  1. 使用Stanford CoreNLP进行句法分析实战
  2. MyEclipse安装SVN插件之超级精简法
  3. asp.net Web API 身份验证 不记名令牌验证 Bearer Token Authentication 简单实现
  4. rational rose 逆向工程
  5. 单向链表的简单Java实现-sunziren
  6. Python 3.6模拟输入并爬取百度前10页密切相关链接
  7. 20200819:力扣202周周赛题解记录
  8. GitHub又受攻击了
  9. itextpdf 合并单元格 横向纵向
  10. python chardet_python 第三方库 chardet
  11. Python数据分析案例05——影响经济增长的因素(随机森林回归)
  12. 【转】Java线程系列:Callable和Future
  13. 常见Bugger篇章一
  14. linux mac 字体,Mac 和 Windows 的中文字体显示效果
  15. IO_FILE hack FSOP
  16. kingcms php 下载,KingCMS企业版(PHP) v6.1.1641(Sp2)
  17. JAVA体育用品在线商城系统-springboot【数据库设计、论文、源码、开题报告】
  18. 会考flash中文字变形为三角形_会考Flash操作知识点
  19. 服务器经常自动断开ssh连接
  20. Html5的页面基本结构标签片段,HTML5基本网页结构以及标签的改变

热门文章

  1. Linux不讲武德——开机无法进入登录界面 卡在进度条就不动了
  2. SELinux系列(八)——SELinux默认安全上下文的查询和修改(semanage命令)
  3. 一行 Python 实现并行化 -- 日常多线程操作的新思路
  4. git文件gitignore修改后不生效
  5. intelliJ IDEA快捷键整理自用版
  6. 运算除法的计算机函数,2、Python基础--除法、常用数学函数(示例代码)
  7. mysql 聚集索引 存什么,关于mysql的聚集索引
  8. android触摸滑动监听,Android 滑动监听的实例详解
  9. python写xml文件_python写入xml文件的方法
  10. linux拷贝文件夹到另一台机器,linux肿么一个文件拷贝到另一个文件夹