接口测试中的加密算法如何实现?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口测试中的加密算法如何实现?相关的知识,希望对你有一定的参考价值。

参考技术A 加密实现对于测试而言,的确是件头疼的事情,毕竟大多数测试没有编码基础,即便有编程也是短板,要是实现加密算法的话,主要有两种方式:
1. 可以以纯编码的方式实现,比如使用 Java 或 Python等
2. 如果是测试工具的话,比如Jmeter,可以求助开发将加密算法导出为 jar 包,然后我们测试再在 Jmeter 中导入jar包,再调用类似于 BeanShell 取样器的组件,调用开发提供的加密函数(可以一定程度的减少代码量) 获得更多关于测试的知识,建议你去找视频学习一下,黑马程序员官网就有很多专业的视频,应该挺适合你的。
参考技术B 1、同时接电脑和显示器,是能解决的,你可以买VGA分屏器,淘宝上有卖。25元。这个能让VGA信号扩展到多个显示器上,但是这样的话,你的电视机和显示器上面显示的内容就完全一样。 2、如果你要求电视的电脑显示的内容不一样。那么只有购买双路视频输出的显卡。别无他法。

JMeter-SHA256加密算法接口测试

前言

我们已经学过了如何利用python脚本对SHA256加密接口进行测试,还没学会的小伙伴们可以看回我写的随笔Python-SHA256加密算法接口测试,那么,对于SHA256加密算法接口,我们如何使用JMeter来进行测试呢?下面,我们来学习两种方法。

接口文档如下:

接口地址: http://47.96.181.17:8098/login

返回格式: json

请求方式: POST

请求参数:{"userName":"您的用户名","password":"sha256加密后的密码"}

请求头:

键:Content-Type 值:application/x-www-form-urlencoded

键:X-Requested-With 值:XMLHttpRequest

成功返回示例:

{

‘jumpUrl‘: ‘index‘,

‘success‘: ‘true‘,

‘systemUser‘: {‘avatarName‘: None,

‘avatarPath‘: ‘file/avatar/2020-02-06/‘,

‘nickname‘: ‘sqqdcl3‘,

‘rememberMe‘: False,

‘securityDigest‘: None,

‘userId‘: ‘1‘,

‘userName‘: ‘sqqdcl‘}

}

失败返回示例:

{‘error‘: {‘password‘: ‘密码错误‘}, ‘success‘: ‘false‘}

方法一:使用JMeter的自带函数

一:打开函数助手,选择__digest

技术图片

 

 

参数含义:

  • Digest algorithm 算法摘要:MD2、MD5、SHA-1、SHA-224、SHA-256、SHA-384、SHA-512
  • String to be hashed:要计算的字符串;
  • Salt to be used for hashing (optional):用于计算散列的盐(可选项);
  • Upper case result, defaults to false (optional)结果大写,默认为false(可选),即默认摘要值为小写
  • Name of variable in which to store the result (optional)存储结果的变量名(可选)

 

 

二:添加HTTP信息头管理器

技术图片

三:添加http请求

技术图片

 

 

四:添加监听器-察看结果树,点击查看运行后的结果

技术图片

 

 

方法二:添加“BeanShell 预处理程序”

一:在“线程组”上添加前置处理器-BeanShell PreProcessor

技术图片

 

 

在Script写入以下代码:

import org.apache.commons.codec.digest.DigestUtils;
String password = "111111";
String pwd_sha256 = DigestUtils.sha256Hex(password);
#结果是大写:String pwd_sha256 = DigestUtils.sha256Hex(password).toUpperCase();
vars.put("pwd-sha256", pwd_sha256);  

二:添加HTTP信息头管理器

技术图片

 

三:添加http请求

技术图片

 

四:添加监听器-察看结果树,点击查看运行后的结果

技术图片

 

以上是关于接口测试中的加密算法如何实现?的主要内容,如果未能解决你的问题,请参考以下文章

JMeter-SHA256加密算法接口测试

JMeter-SHA256加密算法接口测试

SpringBoot中如何灵活的实现接口数据的加解密功能?

接口测试之-postman

如何实现C语言的DES加密算法实现,请关注

PHP如何实现AES加解密