一,Jmeter-http 接口脚本添加cookie

实例:学生金币充值接口  该接口有权限验证,需要admin 用户才可以操作,需要添加cookie

cookie 中key 为登录的用户名,value 从登录接口中获取,登录成功之后会返回sign

第一步:设置登录接口http请求- 获取sign值

第二步:设置学金币充值接口http请求,添加http cookie 管理器

第三步:填写学生金币接口入参

第四步:保存-启动-查看结果

二,Jmeter-http 接口脚本添加HTTP信息头管理器

实例:获取所有学生信息接口 需要添加header信息,key为Referer value 为http://api.nnzhp.cn/

第一步:设置获取所有学生信息接口http请求

第二步:添加http信息头管理器

第三步:保存-启动-查看结果

三,Jmeter-文件上传与下载

实例:文件上传接口

第一步:设置文件上传接口http请求

第二步:保存-启动-查看结果树

文件下载

保存-运行-查看结果树

四,Jmeter-参数化

实例:添加学生信息接口  这个接口是用来讲入参是json类型的

1,用户定义的变量   这种是为了方便管理参数,只能有一个值

2,函数生成器 可以参照一定的规则生成数据,比如说生成一些随机数

点击选项-> 函数助手对话框-> 选择一个功能-> 输入值-> 点击【生成】-> 复制该字符串至需参数化的位置

3,从文件中读取 事先写好一些数据,然后从文件中读取

五,Jmeter -关联  关联就是把获取到的返回的值,保存起来给别的请求使用,或者做一些其他的处理

1,正则表达式关联   需要注意正则表达式提取器的放置位置,必须放在登录请求下面。因为,sign 值是从登录接口里获取到的

       正则表达式就是自动的帮你把某个值,从上一个接口的返回中取到,然后放到下一个需要使用它的接口里面。

       学生金充值的例子就是,正则表达式先从登陆接口里面把sign取到,然后放到了充值接口的cookie中

正则表达式匹配写法窍门,把需要抓的值复制     "sign": "cd2b43f1688e472e3a516b5a2c6831e8",     将需要关联的值用(.*)  代替  即可    "sign": "(.*)",

常见错误 : "sign": "(.*)",   缺少空格

2,通过jp@gc - JSON Path Extractor 关联    需要关联login_info 中的sign 值   同样需要注意jp@gc - JSON Path Extractor 的放置位置,必须放在登录请求下面。因为,sign 值是从登录接口里获取到的

sign在login_info 这个json串里面存放着,取sign 值 就要先取到login_info 的值,再取sign

json path extractor中使用$代表原来接口的返回值   $.login_info.sign   注意  "." 不能省略

格式如下:

六,Jmeter 操作mysql

1,导入jdbc 的 jar 包,因为Jmeter 本身不能直接连接mysql ,所以需要导入第三方的Jar 包 ,来连接mysql

2,创建数据库连接配置

3,配置mysql 的url, 端口号,帐号,密码

Database  url  格式参考:jdbc:mysql://192.168.1.116:3307/bugfree?allowMultiQueries=true

其中 192.168.1.116  为url   3307  为端口号   bugfree  为帐号

定义 variable name  如下:

select  语句 query type 设置成 select statement ,如图

insert 语句  query type 设置为 callable statement  如图

附  sql  注释格式  如图

七,解决中文乱码问题

解决方案:修改配置文件{JMETER_HOME}\bin\jmeter.properties 中的默认显示字体,改为系统支持的中文字体(可进入系统目录【控制面板\所有控制面板项\字体】查看)即可。

# 默认字体设置的配置项如下黑体标示所示
#JSyntaxTextArea configuration
#jsyntaxtextarea.wrapstyleword=true
#jsyntaxtextarea.linewrap=true
#jsyntaxtextarea.codefolding=true
# Set 0 to disable undo feature in JSyntaxTextArea
#jsyntaxtextarea.maxundos=50
# Change the font on the (JSyntax) Text Areas. (Useful for HiDPI screens)
#jsyntaxtextarea.font.family=Hack
#jsyntaxtextarea.font.size=14

可直接取消注释,或将配置项改为如下所示,重启JMeter 即可。

jsyntaxtextarea.font.family=宋体

修改配置文件重启JMeter后,在 Body Data 中输入中文时,即可正确显示

Jmeter常用操作的更多相关文章

  1. 性能测试—JMeter 常用元件(四)

    <零成本web性能测试>第三章 Web性能测试脚本录制与开发中JMeter常用测试元件 测试计划描述了JMeter运行时将会执行的一系列步骤,一个完整的测试计划包含一个或多个线程组.逻辑控 ...

  2. 性能测试—JMeter 常用元件(二)

    性能测试—JMeter 常用元件(二) <零成本web性能测试>第三章 Web性能测试脚本录制与开发中JMeter常用测试元件 测试计划描述了JMeter运行时将会执行的一系列步骤,一个完 ...

  3. jmeter常用四种断言

    jmeter常用四种断言 一.Response Assertion(响应断言)二.Size Assertion(数据包字节大小断言)三.Duration Assertion(持续时间断言)四.bean ...

  4. 转 2 jmeter常用功能介绍-测试计划、线程组

    2 jmeter常用功能介绍-测试计划.线程组   1.测试计划测试用来描述一个性能测试,所有内容都是基于这个测试计划的. (1)User Defined Variables:设置用户全局变量.一般添 ...

  5. 【三】用Markdown写blog的常用操作

    本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...

  6. php模拟数据库常用操作效果

    test.php <?php header("Content-type:text/html;charset='utf8'"); error_reporting(E_ALL); ...

  7. Mac OS X常用操作入门指南

    前两天入手一个Macbook air,在装软件过程中摸索了一些基本操作,现就常用操作进行总结, 1关于触控板: 按下(不区分左右)            =鼠标左键 control+按下        ...

  8. mysql常用操作语句

    mysql常用操作语句 1.mysql -u root -p   2.mysql -h localhost -u root -p database_name 2.列出数据库: 1.show datab ...

  9. nodejs配置及cmd常用操作

    一.cmd常用操作 1.返回根目录cd\ 2.返回上层目录cd .. 3.查找当前目录下的所有文件dir 4.查找下层目录cd window 二.nodejs配置 Node.js安装包及源码下载地址为 ...

随机推荐

  1. OC @class关键字

      1.引用一个类的两种办法 @class:如果你只是定义成员变量.属性 #import:如果是继承某个类 2.两种方法的区别 #import方式会包含被引用类的所有信息,包括被引用类的变量和方法: ...

  2. 四种有能力取代Cookies的客户端Web存储方案

    目前在用户的网络浏览器中保存大量数据需要遵循几大现有标准,每一种标准都拥有自己的优势.短板.独特的W3C标准化状态以及浏览器支持级别.但无论如何,这些标准的实际表现都优于广泛存在的cookies机制. ...

  3. 一份不太简短的LaTeX教程 lshort – A short in­tro­duc­tion to LATEX 2elshort – A short in­tro­duc­tion to LATEX 2e

    Lshort started as a trans­la­tion and ra­tio­nal­i­sa­tion of a ground-break­ing Ger­man-lan­guage i ...

  4. Java读写文件,中文乱码解决

    读文件:使用new BufferedReader(new InputStreamReader(new FileInputStream(file), "UTF-8")); Strin ...

  5. cmake处理多源文件目录的方法

    cmake处理源代码分布在不同目录中的情况也很简单,现在假设我们的源代码分布情况如下: 源代码的分布情况 其中src目录下的文件要编译成一个链接库 第一步,项目主目录中的CMakelist.txt 在 ...

  6. NetBiosDomainNamesEnabled与SharePoint User Profile Service Application

    本文中的内容转自参考资料中的文章.   如果域的NetBios名字跟Fully Qualified Domain Name不同的话, 那么就需要开启UPA的NetBiosDomainNamesEnab ...

  7. 寻找i*j=m的个数

    问题描述 3*3的矩阵内容. 1 2 3 2 4 6 3 6 9 即a[i][j](1<=i<=n,1<=j<=n)=i*j. 问一个这样n*n的矩阵里面,里面m出现的次数. ...

  8. IIS 之 Asp.Net项目内部运行详解

    我们都知道,当用户在浏览器地址栏中输入网址时,该请求会被IIS服务器捕获,如果是请求的是静态页面则由IIS本身处理并直接返回客户端:如果是动态页(*.aspx),通过一系列的前期的处理来到 .NET ...

  9. ARM 指令集版本和ARM 版本z

    a9是cortex-a9的简称,属于v7指令集,属于目前比较新的了.arm9就是arm9,属于v5指令集,arm9后面的是arm11,属于v6指令集,之前的是arm7,属于v4指令集.虽然他们之间差别 ...

  10. sprintf、vsprintf、sprintf_s、vsprintf_s、_snprintf、_vsnprintf、snprintf、vsnprintf 函数辨析

    看了题目中的几个函数名是不是有点头晕?为了防止以后总在这样的细节里纠缠不清,今天我们就来好好地辨析一下这几个函数的异同. 实验环境: Windows下使用VS2017Linux下使用gcc4.9.4 ...