在特殊的接口测试过程中,需要进行相对复杂的逻辑处理,如:加密和解密。针对此类接口,需要编写辅助函数来完成测试。
案例:
1.编辑md5加密的脚本
操作:项目管理 --> 点击debugtalk.py -->编辑代码
debugtalk.py
import hashlib
# 定义获取sign的方法,传递用户名和密码参数
def getSign(user,passwd):
str = user+passwd # 拼接用户名+密码的字符串
md5 = hashlib.md5() # 调用hashlib模块的md5()方法
md5.update(str.encode(encoding='utf-8')) # 对str进行utf-8格式编码,然后用md5加密
sign = md5.hexdigest() # md5加密,并以16进制的字符串进行存储到sign变量
return sign
# 根据给定的 [用户名+密码] 生成md5加密的摘要信息,并返回sign的结果
print(getSign('admin','123456'))
2.创建测试用例 test_get_sign
配置如下:
【request】
user: $user
passwd: $passwd
sign: ${getSign($user,$passwd)}
(辅助函数)
【variables/parameters/hooks】
user: admin
passwd: 123456
操作:request --> add data --> 填写data中参数项,引用variables中设定的参数值
操作:variables/parameters/hooks --> add variables --> 填写变量及其值
选择用例归属、命名:
3.执行用例
以上,POST请求体中已生成md5加密的摘要信息,响应数据的form对象中也可查看到有该摘要信息