接口自动化中级篇
咱们书接上本:
接口测试基础篇(史上最详细)https://blog.csdn.net/weixin_45344334/article/details/95338297
设计思路
-
将测试用例封装成json格式,里面包含接口的各种信息
-
封装requests,能请求post get等类型的请求
-
执行用例,执行前,判断前置条件
-
判断用例是否跳过,然后在基础上增加allure测试报告
功能总结如下
-
微型框架能适应简单的各种接口请求 post get等等
-
断言只需要写一次,不需要重复的代码
-
抛开unittest和pytest等框架的约束,本次不使用这些框架!
-
执行测试用例的代码 封装成通用的,维护只需要维护json数据就可以了
-
设计思路简单而简约,先搭建简单的框架在搭建稍微复杂的
-
本次测试报告采用allure,自定义allure测试报告
-
可以适应大批量接口请求,维护简单
-
有断言,前置条件等功能
咱们的目的就是从0到1,到最后的接口自动化框架搭建,我会用自己最大的能力往框架里面带入,从简单略有难度,由浅到深的一个过程, 希望这个过程,大家能积极交流 互相学习 一起进步
allure官方文档:https://docs.qameta.io/allure
希望你能有看官方文档的习惯,因为再多的文章都不如官方文档详细,强烈建议哦!!!
请用你勤劳的双手,跟着敲一遍,不敲是学不会的哦~
第一步: 用例封装成json格式
# 测试环境
base_url = 'http://suggest.taobao.com/'
# 假装是正式环境
# base_url = 'http://suggest.taobao.com/'
"""
title:用例的名称
condition:前置条件,写skip跳过这条用例
url:接口的链接
params:参数 如果是headers 就增加一个headers
type:请求类型 get post put 等等
isok:用例是否通过
time:这条用例是否需要等待
"""
# list里面嵌套 字典,通过循环读取获取里面的字典类型用例
httpurl_data = [
# 1.注册接口 第一条用例
{'title': '注册接口', # 用例的名称
'condition': '', # 前置条件 写skip 跳过这个用例
'url': '{}sug'.format(base_url),
'params': {
'code': 'utf-8', # 接口需要传入编码格式
'q': '裤子', # 搜索条件 如 裤子等信息
'callback': 'cb 用例'
},
'type': 'get', # 请求的类型 get 就写get post就写post
'isok': '', # 用例是否通过,通过是ok 不通过是 failure
'time': '1' # 用例等待的时间 秒 1就是等待1秒后执行
},
# 2.登录接口 第二条用例
{'title': '登录接口', # 用例的名称
'condition': '', # 前置条件 写skip 跳过这个用例
'url': '{}sug'.format(base_url),
'params': {
'code': 'utf-8', # 接口需要传入编码格式
'q': '裤子', # 搜索条件 如 裤子等信息
'callback': 'cb 用例'
},
'type': &