跳至主要內容

python+requests做接口自动化测试

薇念约 486 字

python+requests+pytest做接口自动化测试

环境搭建

安装依赖

项目框架

1、config:包含配置文件,如环境配置,数据库配置等
2、data:存放测试数据,如测试用例数据,参数化数据等
3、common:存放通用的工具类和方法,如请求封装,数据处理等
4、test_cases:存放各个接口的具体测试用例
5、test_suites:存放测试套件,组织多个测试用例的执行顺序
6、report:保存测试报告,如html报告,日志文件
7、logs:日志运行
8、requirements.txt:用于管理项目所需的第三方库依赖

requests库常用的方法

from http.client import responses
import pytest
import requests

# 发送get请求
requests.get()  
# 发送post请求,可以传递表单数据或json数据
requests.post()
# 发送put请求
requests.put()
# 发送DELETE请求
requests.delete()
# 返回请求的状态码
response.status_code()
# 返回响应内容的文本形式
response.text()
# 以json格式返回响应内容
response.json()
# 返回响应头信息
response.headers()
# 返回响应中的cookies信息
response.cookies()
# 返回响应时间
response.elapsed()

连接数据库

import pytest
import pymysql

# 连接数据库
connection = pymysql.connect(
    host='localhost',
    user='root',
    password='<PASSWORD>',
    db='test',
    charset='utf8'
)
# 创建游标对象
cursor = connection.cursor()
# 执行sql查询
cursor.execute('select * from user')
# 获取查询结构
result = cursor.fetchall()
# 输出查询结果
for row in result:
    print(row)
#  关闭游标和连接
connection.close()
cursor.close()

pytest使用fixture实现多接口关联自动化实战

实现步骤

通过读取excel表格的测试用例,封装excel读取方法,excel表格关键字,接口自动化方法,并结构pytest自动化框架的fixture方法,实现多接口用例关联实战

1、创建excel文件用例--case.xlsx

2、将excel用例读取方法,excel用例关键字,接口请求方法进行封装

登录获取token,过期自动登录并获取