Jmeter 接口测试参数处理
问题:
一、签名参数sign算法由文字描述,算法需自己编写
二、 参数param_json为变化的json串(json串内订单号唯一)
解决:
一、 签名sign:
1. 手动拼接后在https://www.cmd5.com/加密,较为麻烦,且容易出错
2. 编写python或java脚本,实现加密,比方法1高效
3. 在postman的Pre-request Script
let app_secret = "xxx"; //签名app_secret
let access_token = "xxx";
let app_key = 'xxx';
let method = 'xxx';
let param_json ='{"thirdOrder":"xxx" ...}'; //参数省略
let timestamp ='2018-06-06 13:52:03'; // 注意格式
let v = '1.0'; //拼接
sign = app_secret +"access_token"+ access_token +"app_key"+app_key+"method"+method+"param_json"+param_json+"timestamp"+timestamp+"v"+v+app_secret;
console.log(sign);
sign = CryptoJS.MD5(sign).toString();
console.log(sign); //设置环境变量
postman.setEnvironmentVariable("sign", sign);
效率大大提高,推荐方法。
4. Jmeter处理方法:
-------4.1 编写java代码实现加密以及生成唯一订单号
-------4.2 将java代码打包后,拷贝到jmeter的lib/ext目录下
-------4.3 在测试计划中引入jar
-------4.4 添加BeanShell Sampler,编写脚本(类似java语法)
// 导入外部jar包(计算sign)
import com.wdzy.tools.GetSign; // 基本不变参数
String app_secret = "xxx"; //签名app_secret
String access_token = "xxx";
String app_key = "xxx";
String method = "xxx";
String timestamp ="2018-06-06 13:52:03";
String v = "1.0"; // 处理第三方订单号
String param_json = new GetSign().getParamJson();
String param_json = param_json.toString();
vars.put("param_json",param_json.toString()); // 拼接sign串
sign = app_secret +"access_token"+ access_token +"app_key"+app_key+"method"+method+"param_json"+param_json+"timestamp"+timestamp+"v"+v+app_secret;
// 计算MD5值
String result = new GetSign().MD5(sign); System.out.println(result);
// 将sign结果存储到作用域
vars.put("sign",result.toString());
Jmeter 接口测试参数处理的更多相关文章
- jmeter接口测试-调用java的jar包-csv参数化请求-BeanShellPreProcessor生成验签作为请求验证参数-中文乱码----实战
背景及思路: 需求:要做 创建新卡 接口的测试,要求: 1. 不需要每次手动修改请求参数. 方案:文中先用excle将数据准备好,导出为csv格式,再用jmeter的csv请求进行参数化 2. 卡号需 ...
- http接口测试——Jmeter接口测试实例讲解
摘要: 最近做的项目需要测试很多接口,上网查一查,发现完整讲述接口测试的资料太少,所以最近自己做完这个项目,把测试的东西整理一下和大家分享一下,希望对看到的人有所帮助 一.测试需求描述 1. ...
- jenkins+ANT+jmeter 接口测试环境搭建
目的 jmeter很早就接触了,最近又在接触项目的时候整了一下.写这篇博客主要有两个目的 1,为了给自己搭建jmeter做一个总结. 2,在部署过程中遇到过一些坑,在这分享出来,也希望能给需要的人一个 ...
- JMeter接口测试系列:Jmeter+jenkins+ant 的自动化构建
在JMeter接口测试不断深入的过程中,发现可以和jenkins和ant一起搭配进行自动化的构建.下面是jmeter自动化构建的整理笔记. 准备环境 需要本机上确定安装了jmeter.ant和jenk ...
- JMeter接口测试实战-动态数据验证
JMeter接口测试实战-动态数据验证 说到验证就不得不说断言, 先来看下JMeter官方给出断言(Assertion)的定义, 用于检查测试中得到的响应数据等是否符合预期,用以保证测试过程中的数据交 ...
- JMeter 接口测试-if控制器
JMeter 接口测试-if控制器 使用场景: 当业务场景是用户登录才能支付操作, 不登录点击支付, 页面会跳转到登录页面. 对于接口也是这样, 一个接口需要执行前, 需要有前提条件, 比如0状态 ...
- Jmeter接口测试操作
一.Jmeter接口测试操作步骤 1. 启动jmeter,右键点击测试计划-->添加-->Threads(Users)-->线程组,点击线程组菜单,右边显示参数设置. 2 . 右键点 ...
- JMeter 接口测试(一)
之前的篇幅介绍了soapUI测试接口, 因为功能丰富, 操作简单, 可以参数化而深受测试小伙伴的喜欢, 今天再给大家介绍一款利器, Jmeter是Apache组织下的免费工具, 我使用的是Mac 系统 ...
- Jmeter接口测试实例
此文章作为工作中用到的jmeter接口测试相关内容简述,方便日后查阅参考,如有理解描述有误之处,欢迎指出. 首先Jmeter环境准备网上有很多教程,在此不多做赘述: 1.接口简述 接口可理解为从客户端 ...
随机推荐
- HashMap原理(一) 概念和底层架构
HashMap在Java开发中使用的非常频繁,可以说仅次于String,可以和ArrayList并驾齐驱,准备用几个章节来梳理一下HashMap.我们还是从定义一个HashMap开始. HashMap ...
- Flutter学习笔记(4)--Dart函数
如需转载,请注明出处:Flutter学习笔记(4)--Dart函数 Dart是一个面向对象的语言,所以函数也是对象,函数属于Function对象,函数可以像参数一样传递给其他函数,这样便于做回调处理: ...
- java中String和int相互转换常用方法详解
java中int和String的相互转换常用的几种方法: String > int s="10";int i;第一种方法:i=Integer.parseInt(s);//默 ...
- 托管堆和垃圾回收(GC)
一.基础 首先,为了深入了解垃圾回收(GC),我们要了解一些基础知识: CLR:Common Language Runtime,即公共语言运行时,是一个可由多种面向CLR的编程语言使用的"运 ...
- 使用wincc C脚本查找窗口句柄的方法
关于窗口句柄的用法,网上可以搜到很多相关的文章,本文以windows API接口函数为例,简单介绍一下基本使用,主要包括找到此窗体,在找到的窗体写入数据,对窗体进行关闭,最大化,最小化的操作: 1.利 ...
- BZOJ3033 太鼓达人题解
太鼓达人 时间限制: 1 Sec 内存限制: 128 MB 题目描述 七夕祭上,Vani牵着cl的手,在明亮的灯光和欢乐的气氛中愉快地穿行.这时,在前面忽然出现了一台太鼓达人机台,而在机台前坐着的是 ...
- 「玩转Python」突破封锁继续爬取百万妹子图
前言 从零学 Python 案例,自从提交第一个妹子图版本引来了不少小伙伴的兴趣.最近,很多小伙伴发来私信说,妹子图不能爬了!? 趁着周末试了一把,果然爬不动了,爬下来的都是些 0kb 的假图片,然后 ...
- 【题解】P2078 朋友-C++
题目传送门 这道题目就是一个模板并查集 但是!唯一不同的地方在于,这道题的编号有负数. C++的map你忘了吗!!!下表可以是任意类型. 所以把fa数组开成一个int->int的map就可以了 ...
- 全栈工程师知识点汇总——html5(上)
一.HTML5 1.新特性: 1. 取消了过时的显示效果标记 <font></font> 和 <center></center> ... 2. 新表单元 ...
- 小白开学Asp.Net Core《二》(补)
小白开学Asp.Net Core<二>(补) ——数据仓储层(Repositroy).服务层(Service) -------------------------------------- ...