一、乱码解决方案

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. Linux操作系统(二)_快速入门

    环境 安装VM ware,输入VM key 在VM上安装CentOS 6.5 设置网络,能在本机上ping通 通过终端连接工具:Xshell或SecureCRT,连接Linux服务器 实操可能出现的问 ...

  2. 通过生成HFile导入HBase

    要实现DataFrame通过HFile导入HBase有两个关键步骤 第一个是要生成Hfile第二个是HFile导入HBase 测试DataFrame数据来自mysql,如果对读取mysql作为Data ...

  3. QTP 保留对象

    1. 常用保留对象(Utility Objects) 保留对象:所谓QTP保留对象就是QTP本身预留的一些可用对象. 通俗些讲就是,当打开QTP时它就已经把这些对象给实例化了,直到关闭QTP后,这些保 ...

  4. SSL certificate problem: self signed certificate

    执行Git命令时出现各种 SSL certificate problem 的解决办法 2014年10月11日 10:45:40   比如我在windows下用git clone gitURL 就提示  ...

  5. Linux中通过grep命令检索文件内容和指定内容前后几行

    原文链接: https://www.linuxidc.com/Linux/2017-11/148390.htm Linux系统中搜索.查找文件中的内容,一般最常用的是grep命令,另外还有egrep命 ...

  6. spring3.0+jsf+ibatis整合

    user.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE sqlMap PUBLI ...

  7. js自增++与自减--运算符

    /** * 自增(++)与自减(--)运算符 */ // 自增示例 var a = 1, c, d, e; console.log(`a++ = ${a++}`); // a++ = 1 consol ...

  8. html中代替空格、大于号、小于号等字符编码

    数字表示法的不方便之处,在于必须知道每个字符的码点,很难记忆.为了能够快速输入,HTML 为一些特殊字符,规定了容易记忆的名字,允许通过名字来表示它们,这称为实体表示法(entity). 实体的写法是 ...

  9. Redis主从配置,哨兵,集群的设计原理

    一 前言 谈到Redis服务器的高可用,如何保证备份的机器是原始服务器的完整备份呢?这时候就需要哨兵和复制. 哨兵(Sentinel):可以管理多个Redis服务器,它提供了监控,提醒以及自动的故障转 ...

  10. Docker两个问题的讨论

    docker中的container到底可不可以理解为一个操作系统? 先表明态度,我的理解是,NO. 主机级虚拟化 容器级虚拟化 容器通过Docker的守护进程(Docker daemon)来进行创建, ...