【代码片段】用python进行接口测试

前言

最近公司搞了个抽奖的活动,开发完成之后需要测试一下中奖率是否准确。本来可以用Jmeter来测试,但我是一名开发人员并没有安装Jmeter,所以就想着写个python脚本测试。考虑到后续可能还会有类似的测试需求就弄了个公共的。

代码
import requests

data = {
    "times": 100, # 请求次数
    "method": "POST", # GET or POST
    "url": "http://xxx.com/xxx",
    "cookies": {
        "PHPSESSID": "cnguud4r1hmn3passs906odp21"
    },
    "proxy": {
        # 代理设置
    },
    "header": {
        "Content-Type": "application/json", # application/x-www-form-urlencoded
        "user-agent": "python-mock/0.0.1",
        "token": ""
    },
    "body": {
        # 请求参数
    }
}

index = 1
while index <= data["times"]:
    if data["method"] == "GET":
        response = requests.get(
            data["url"], params=data["body"], headers=data["header"], cookies=data["cookies"], proxies=data["proxy"])
    elif data["header"]["Content-Type"] == "application/json":
        response = requests.post(
            data["url"], json=data["body"], headers=data["header"], cookies=data["cookies"], proxies=data["proxy"])
    else :
        response = requests.post(
            data["url"], data=data["body"], headers=data["header"], cookies=data["cookies"], proxies=data["proxy"])

    if response.status_code == 200:
        result = response.content.decode('utf-8')
    else:
        result = "访问失败"
    print("第 %s 次执行:%s" % (index, result))
    print()
    index += 1

备注:由于需求是测试中奖概率,所以写的是顺序请求,并不会有并发的情况出现。如果需要测试并发可以使用进程或者线程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值