Python+unittest 接口自动化测试
2024-10-01 07:49:54
1、封装get、post
#!/usr/bin/env python3
# -*- coding: utf-8 -*- __author__ = 'hualai yu' import requests class RunMethod:
def post_main(self, url, data, header=None, params=None):
res = None
if header is not None:
res = requests.post(url=url, data=data, headers=header, params=params, verify=False)
else:
res = requests.post(url=url, data=data, verify=False)
return res def get_main(self, url, data=None, header=None):
res = None
if header is not None:
res = requests.get(url=url, params=data, headers=header, verify=False)
else:
res = requests.get(url=url, params=data, verify=False)
return res def run_main(self, method, url, data=None, header=None, params=None):
res = None
r = None
if method == 'Post':
res = self.post_main(url, data, header, params)
else:
res = self.get_main(url, data, header)
# return json.dumps(res, ensure_ascii=False)
print(res.url)
print(res.text)
# r = res.content
# par = json.loads(r)
return res.json()
2、接口用例测试
#!/usr/bin/env python
# -*- coding: utf-8 -*- ' a test module '
import urllib3 __author__ = 'yu' import unittest
from methon.TestResult.conty.common import RunMethod class Test(unittest.TestCase):
def setUp(self):
urllib3.disable_warnings()
self.run = RunMethod()
url = "https://x-chat-test.zmlearn.com/gateway/zhangmen-client-inClass/api/oauth/loginNew" querystring = {"access_token": "undefined"} data = "{\"msg\":\"QzCNH3+l2/P4w3jTqacK+VGcG2bZf1D1/Tk9qkaGhzxKkPz7h8btjdjWR542vq7zE70ouc+asLft1OpoijOcJwP+GP7" \
"/cnMTnRa1pe7bbwuc+66G1BDgnt4vHCPTk7wzxqmaWOaRFHi8SqheJo8zPVH2a13loqr7k9Xc83wEcRA=\"}\r\n "
header = {
'Content-Type': "application/json" } res = self.run.run_main("Post", url, data, header, querystring)
self.accessToken = res['data']['accessToken']
self.userId = res['data']['userId']
print(res) def test_getInterviewRole_02(self):
url = "https://x-chat-test.zmlearn.com/gateway/zmc-personal-center/api/courseMsg/getUserMessages"
querystring = {"access_token": self.accessToken}
data = {
"userId": self.userId
}
header = {
"Content-Type": "application/x-www-form-urlencoded"
}
res = self.run.run_main("Post", url, data, header, querystring)
print(res)
# self.hall = res['data'][0]['id'] if __name__ == '__main__':
unittest.main()
最新文章
- [转] nodemon 基本配置与使用
- linux 环境下安装mysql5.6
- Java批量文件打包下载
- SQL查询语句行转列横向显示
- 053医疗项目-模块五:权限设置-将用户操作权限写入Session
- Google API在线生成二维码的方法
- @gettrcname.sql
- SQL Server 2008 Datetime Cast 成 Date 类型可以使用索引(转载)
- hdu1712 线性dp
- JIRA官方:JIRA源代码集成
- php 按列值合并数据
- vim + DoxygenToolkit.vim环境搭建
- SharedPreferences封装类
- 2017级C语言教学总结
- 谷歌发布 TensorFlow Serving
- yum 安装fuser命令
- SpringCloud无废话入门03:Feign声明式服务调用
- js判断客户端是pc还是手机及获取浏览器版本
- [转] css自定义字体font-face的兼容和使用
- RHEL6.2的安装文档
热门文章
- 【Linux】连接CRT
- 复习java的例子(第一天)
- Java_Web之Servlet基础
- andorid 查看OpenCv Mat的Debug信息
- Eigen与Matlab语法及语义辞典
- 【sqli-labs】 less31 GET- Blind -Impidence mismatch -Having a WAF in front of web application (GET型基于盲注的带有WAF注入)
- MVC POST请求后执行javascript代码
- uni-app判断各大平台的语法
- loadrunner报错总结
- 用那啥 那啥来着Django来发送Email,结合腾讯云,批量发短信给用户!