【Python 5】----Pytest接口自动化(实现基础的测试框架)

时间:2025-03-08 08:47:46
  • from urllib import response
  • import requests
  • import jsonpath
  • import json
  • #关键字驱动
  • #发送请求 ,8种 post/get
  • class Apikey():
  • def get(self,url,params=None,**kwargs):
  • """
  • :param url: 请求的URL
  • :param params: 需要拼装在URL当中的参数
  • :param kwargs: 其它参数,具体参考()
  • :return: 响应数据
  • """
  • return (url=url,params=params,**kwargs)
  • #发送post请求
  • def post(self,url, data=None, json=None, **kwargs):
  • """
  • :param url: 请求的URL
  • :param data: 请求参数
  • :param json: json格式请求数据
  • :param kwargs: 其他参数
  • :return: 响应数据
  • """
  • return (url=url,data=data,json=json,**kwargs)
  • #提取数据 数据源{msg:"登陆成功" } jsonpath:$.msg
  • def get_text(self,response,key):
  • """
  • :param response: 响应数据
  • :param key: 关键字
  • :return: 返回
  • """
  • value_list = (response, key)
  • return value_list[0]
  • #函数入口
  • if __name__ == '__main__':
  • """
  • 1.实例化对象
  • 2.通过对应类调用对应方法
  • 3.提取数据
  • """
  • ak=Apikey()
  • #准备好四要素
  • # 模拟登陆接口请求
  • data = {
  • "accounts": "hami",
  • "pwd": "123456",
  • "type": "username"
  • }
  • params = {
  • "application": "app",
  • "application_client_type": "weixin",
  • }
  • res = (url="/?s=api/user/login",params=params, data=data)
  • print("响应数据:",())
  • #提取数据
  • text=ak.get_text((), "$.msg")
  • print("提取数据:",text)