一、乱码解决方案

1、jmeter查看结果树乱码

(1)在jmeter的bin目录下找到jmeter.properties这个文件,添加上
sampleresult.default.encoding=utf-8
(2)重启jmeter
 

2、jmeter body data里面有乱码怎么解决

(1)在jmeter的bin目录下找到jmeter.properties这个文件,添加上
jsyntaxtextarea.font.family=Hack
(2)重启jmeter
 

二、使用jmeter做接口测试

测试接口之前,得有一个接口文档。我们用以下接口文档来讲解:
账号:xiaohei
密码:123456
 
打开jmeter,依次添加:线程组、HTTP请求、查看结果树
 

1、请求方式:get

范例:获取学生信息接口

2、请求方式:post

范例:登录接口
 
 
 

3、请求方式:post,入参是json类型

范例:添加学生信息接口
添加学生信息接口文档:http://doc.nnzhp.cn/index.php?s=/6&page_id=10
 
 
 

4、添加cookie

范例:学生金币充值
学生金币充值接口文档: http://doc.nnzhp.cn/index.php?s=/6&page_id=11
 
 
 
 

5、如何添加header信息

范例:获取所有学生信息
 
 
 
 
 

6、文件上传接口

上传文件接口文档地址:http://doc.nnzhp.cn/index.php?s=/6&page_id=13
 
 
 

三、jmeter的参数化

 

1、第一种方法:用户定义的变量

 
这种就是为了方便管理参数,只能有一个值,比如说ip地址不经常变化的
 
 
 
 

2、第二种方法:函数生成器

函数生成器可以参照一定的规则生成数据,这样的比如说生成一些随机数
 
(1)随机函数__Random
 
 
 
(2)计数函数__counter
此函数从1开始,每调用这个函数一次它就会自动加1
第一个参数:True,那么每个用户有自己的计数器,可以用于统计每个线程各执行了多少次。False,全局计数器。
第二个参数:重用计数器函数创建值的引用名。测试人员可以这样引用计数器的值:${test}。这样一来,测试人员就可以创建一个计数器后,在多个地方引用它的值。
 
 
(3)时间函数__time
hh代表12小时制,HH代表24小时制,如果函数的值什么都不写,则值取时间戳。
注释:时间戳,从计算机发明的那一天到现在过了多少秒(可以百度时间戳转换工具,转换成时间)。jmeter是java开发的,java里面的时间戳默认是精确到毫秒,所以要除以1000才是真正的时间戳
 
 
(4)唯一id函数__UUID
这个就是每次会生成一个随机的uuid,都是唯一的
 

3、第三种方法:从文件中读取

文件读取就是事先写好一些数据,然后从文件中读取,这样的话,比如说登录接口,账号和密码都是我们事先注册好的
 
添加--配置原件--CSV data set config-添加文件,取名字,在参数中用${你取得名字}代替。
 
 
 
 
 
小提示:
如果把文件放在bin目录下,可以只写文件名,不用放绝对路径了。
 
 
 

四、jmeter的关联

调用第一个接口,从接口的返回数据中拿到某个值,放到第二个接口里面来用
举例:登录得到的cookie,传给金币充值接口
 
 
1、登录时得到如下返回
{
"error_code": 0,
"login_info": {
"login_time": "20180811173721",
"sign": "f9ed588147c86ca4c600a0bac2b13179",
"userId": 1
}
}
 
2、于是得到函数(&代表大括号):
$.login_info.sign
 
3、登录接口下添加“后置处理器--JSON Extractor”,在哪个请求获取数据,就放在哪个请求的下面。
小提示:当返回不是json格式时,可以用正则表达式提取器
 
 
4、把函数复制过去,取一个名字比如sessionid
 
 
5、在金币充值下添加“HTTP信息头管理器”,在HTTP信息头管理器中添加Cookie
 
 
6、填写好金币充值接口
 

 
7、执行,我们看到debug已经取到sessionid了,说明执行成功!
 
 

使用jmeter做接口测试----柠檬不萌!的更多相关文章

  1. 使用postman做接口测试----柠檬不萌!

    目录 一.GET和POST请求的区别 二.http协议 1.http请求分为两个部分 2.http状态码 三.使用postman测试HTTP接口 1.请求方式:get 2.请求方式:post 3.请求 ...

  2. jmeter做接口测试

    jmeter做接口测试有两种方式: 1. 2.

  3. 怎样用JMeter做接口测试?

    本文介绍JMeter如何做web service测试,一般来说web服务,一般指的是HTTP请求相关的内容.这里就介绍一下如何利用JMeter做基于HTTP的web接口测试.接口也叫API(Appli ...

  4. 如何用Jmeter做接口测试

    Jmeter介绍&测试准备: Jmeter介绍:Jmeter是软件行业里面比较常用的接口.性能测试工具,下面介绍下如何用Jmeter做接口测试以及如何用它连接MySQL数据库. 前期准备:测试 ...

  5. 使用Jmeter做接口测试(学生信息的6个接口)

    使用Jmeter做接口测试,案例中涉及到接口有:获取学生信息.登录.添加学生信息.学生金币充值.获取所有学生信息.文件上传. 一.获取学生信息(get请求) 服务器名称或IP:输入被请求服务器的名称或 ...

  6. 利用Jmeter做接口测试

    本文作者:大道测试团队-孙云 1.在安装jmeter之前先配置好JDK,再配置jmeter环境变量. 2.启动jmeter 启动jmeter: 双击Jmeter解压路径(apache-jmeter-3 ...

  7. 转:Linux下用Jmeter做接口测试

    本地设计 首先在本地设计 Apache JMeter 测试计划,大家可以参考<接口测试之 JMeter 初探> ,这里不再重复. 服务器配置 确保服务器已经安装了JDK和Python. 在 ...

  8. 使用jmeter做接口测试

    1.启动jmeter. 我们可以找到Jmeter/bin 目录下的jmeter-server这个脚本,运行即可. 在下图打开的Jmeter 页面中,右键“测试计划” -> “添加” -> ...

  9. 利用Jmeter做接口测试的时候,如何提取头部的JSESSIONID然后传递到下一个请求,继续完成当前用户的请求。

    其实,关于这个问题有三种种解决方法: 1)从响应数据里面提取JSESSIONID,点击链接可以查看https://www.cnblogs.com/liulinghua90/p/5320290.html ...

随机推荐

  1. mongodb配置详解

    #启用日志文件,默认启用 journal=true #这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false quiet=false # 日志文件位置 logpath=/usr/loc ...

  2. Python笔记(三)_字典与集合

    字典dict 映射类型,以键-值的方式存储,通过键来取相应的值 member={'one':1,'two':2,'three':3} 创建字典member=dict('苹果'='apple','桔子' ...

  3. js实现的页面加载完毕之前loading提示效果

    页面加载readyState的五种状态 原文如下: 0: (Uninitialized) the send( ) method has not yet been invoked. 1: (Loadin ...

  4. Egyptian Collegiate Programming Contest 2017 (ACM ECPC 2017) - original tests edition

    题目链接:https://codeforces.com/gym/101856 D. Dream Team 题意:n个点,让你连边成为一棵树,边权为顶点的GCD(u,v).求所有边权和的最大值. 思路: ...

  5. git 更新代码

    https://jingyan.baidu.com/album/ab69b2707882f52ca7189f14.html?picindex=7 git commit:将本地修改过的文件提交到本地库 ...

  6. IE兼容模式下样式分离错乱,求CSS高手

    IE正常模式下访问正常 兼容模式右边图片切换区域样式错乱,求CSS高手! 详细参考网址:www.javams.com

  7. 计算两个日期之间相差的天数(带带负数) 支持格式YYYY-mm-dd和YYYY-mm-dd HH:mm:ss

    /** * 计算两个日期之间相差的天数(带带负数) 支持格式YYYY-mm-dd比较 * @param higDate 减数 * @param lowDate 被减数 * @returns 差值天数 ...

  8. 《代码大全2》读书笔记 Week 1

    <代码大全2>第一.二.三章 隐喻思维在西方是一个热门的话题,隐喻的认知功能在各个学科正受到越来越多的重视,依照我的理解,其实就是以众所周知或者理解主体熟悉的事物为符号去将新事物.新概念具 ...

  9. docker概述与安装及运行容器

    传统虚拟化 传统虚拟化步骤 1.安装虚拟化软件以及虚拟化的管理软件 2.创建虚拟机 3.给虚拟机安装os 4.在虚拟机内部不是应用(http.db之类的应用) 传统虚拟化的特点 1.VM与VM之间是完 ...

  10. Vue-基础(二)

    一,Vue中的组件化开发: Vue中的组件也就是Vue实例 组件类型: 通用组件(例如,表单,弹窗,布局类等) 业务组件(抽奖,机器分类) 页面组件(单页面开发程序的每个页面都是一个组件) 组件开发三 ...