前言
在之前的随笔中,我们已经学过了如何使用使用JMeter和Postman实现sign签名接口校验的接口测试,今天我们来学习一下如何写Python脚本实现签名接口的接口测试。
签名接口:
地址:http://localhost:8080/pinter/com/userInfo
参数为: {"phoneNum":"123434","optCode":"testfan","timestamp":"1211212","sign":"fdsfdsaafsasfas"} 其中,sign字段是按照特定算法进行加密后的数据
本接口的签名算法为 sign=Md5(phoneNum+ optCode+ timestamp)
代码如下:
import time import random import hashlib import requests import json #1.生成5位随机数 phone=random.randint(10000,99999) #2.生成13位数字的时间戳 timeStamp=int(round(time.time()*1000)) print(timeStamp) optCode="testfan" #3.随机数和时间戳拼接 t=str(phone+timeStamp) #4.sign=随机数phoneNum+optCode sign=t+optCode #5.实例化一个md5对象 md5=hashlib.md5() #6.sign字段进行md5加密 md5.update(sign.encode("utf-8")) print(md5.hexdigest()) def md5_sign(): url ="http://localhost:8080/pinter/com/userInfo" header={"Content-Type":"application/json" } body={"phoneNum":phone,"optCode":"testfan","timestamp":timeStamp,"sign":md5.hexdigest()} respon = requests.post(url=url, headers=header,data=body) return respon.json() if __name__ == '__main__': print(md5_sign())