Python+Requests+Unittest接口自动化测试_python+unittest+requests框架

  • 集成成功
  • 交付

新的方式:

  • 产品经理 / 领导 / 客户提出需求(提出文字需求)
  • UI做出设计图
  • 前后端约定接口 & 数据 & 参数
  • 前后端并行开发(无强依赖,可前后端并行开发,如果需求变更,只要接口 & 参数不变,就不用两边都修改代码,开发效率高)
  • 前后端集成
  • 前端页面调整
  • 集成成功
  • 交付

🤑通过F12打开浏览器开发者工具进行抓包,返回数据是json格式的就是前后端分离,返回时html页面就是没有前后端分离。

微服务的概念:

将大模块切分成小模块。减少代码的耦合度,从而降低模块与模块之间的影响。原先是一个jar包里面包含所有模块,改一个模块就有可能影响其他模块,现在是将一个一个的模块都打成一个一个的jar包,模块与模块之间的交互通过接口,哪个模块出了问题,只需要修改那个模块的jar包,避免因为修改一个模块的代码导致其他模块出错。

(2)Python requests框架讲解

接口自动化requests环境搭建

接口自动化核心库:requests

安装requests库的方法:

方法一:

命令行安装,打开cmd或者终端,输入以下命令:

pip install requests -i https://pypi.douban.com/simple/

方法二:
在pycharm中安装,settings --> Project --> Project Interpreter --> 点击“+”号 --> 输入request安装

测试环境是否ok

# -*- coding:utf-8 -*-
# 作者:IT小学生木江
# 时间:2021/1/7 21:48

import requests

url_toutiao = "https://www.ixigua.com/tlb/comment/article/v5/tab_comments/?tab_index=0&count=10&group_id=6914830518563373581&item_id=6914830518563373581&aid=1768"
# 方式一:
# result_toutiao = requests.get(url_toutiao)

# 方式二:
result_toutiao = requests.get(url=url_toutiao)

# 方式三:
# result_toutiao = requests.get(
#     "https://www.ixigua.com/tlb/comment/article/v5/tab_comments/?tab_index=0&count=1&group_id=6914830518563373581&item_id=6914830518563373581&aid=1768")

# print(result_toutiao.json())
# print(type(result_toutiao.json()))  # <class 'dict'>
result = result_toutiao.json()
print(result)
expect_result = "华晨金杯汽车花朵朵"
actual_result = result["data"][0]["comment"]["user_name"]
print(actual_result)
if expect_result == actual_result:
    print("pass!")
else:
    print("failed!")

响应超时timeout

import requests

# V部落:http://[服务器ip]:8081/index.html
# 文章列表
url_v_article = "http://[服务器ip]:8081/article/all"
v_headers = {
    "Cookie": "studentUserName=ctt01; Hm_lvt_cd8218cd51f800ed2b73e5751cb3f4f9=1609742724,1609762306,1609841170,1609860946; adminUserName=admin; JSESSIONID=9D1FF19F333C5E25DBA60769E9F5248E"}
article_params = {"state": 1,  # -1:全部文章 1:已发表 0:回收站 2:草稿箱
                  "page": 1,  # 显示第1页
                  "count": 6,  # 每页显示6条
                  "keywords": ""  # 包含的关键字
                  }
keywords = ["大橘猫", "跑男", "牙"]
for keyword in keywords:
    article_params["keywords"] = keyword
    # headers和params是不定长的,根据定义的字典传参
    # timeout超时,单位为秒
    # 通过设置超时时间,告诉requests在经过多久后停止等待响应
    result = requests.get(url_v_article, headers=v_headers, params=article_params, timeout=30)
    print(result.json())

JSON、URL、text、encoding、status

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值