如果下面文章内容,不够全面,我这边给你推荐一套视频:这个视频可以说是B站百万播放全网第一的自动化测试教程,同时在线人数到达1000人,并且还有笔记可以领取
- 利用
Pytest+Request+Allure+Jenkins
实现接口自动化; - 实现一套脚本多套环境执行;
- 利用参数化数据驱动模式,实现接口与测试数据分离
- 使用
logger
定制实现自动化测试日志记录
实现步骤:
框架结构:
1、接口自动化项目代码编写(先在window实现)
1.1 项目准备
先在window安装响应的环境依赖
- 安装python3.7(要保证pip能用,一般安装python3.7会自动安装pip)
- 安装pytest框架---- pip install pytest
- 安装request库---- pip install request
- 安装openpyxl库(测试数据保存在excel中,需要依赖读取excel的库)---- pip install openpyxl
- 安装pycharm(编写python脚本工具)
注意:可能还需要一些依赖的东西,项目步骤里会依据需要进行安装
1.2 设计基于pytest的测试框架结构
在pycharm中开发构建项目结构
common:存放公共方法
config:存放环境配置信息
lib:存放第三方库
main:框架主入口
report:存放allure测试报告
test_case:存放测试用例
test_data:存放测试数据
1.3 实现接口公共请求发送能力
从这一步开始正式编写代码
封装http请求的公共能力(封装request库,变成自己的公共处理能力),放到common目录下。
# encoding: utf-8
import requests
import urllib3
# from urllib3.exceptions import InsecureRequestWarning
urllib3.disable_warnings()
# 加这句不会报错(requests证书警告)
# requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
class HTTPRequests(object):
def __init__(self, url):
self.url = url
self.req = requests.session()
# 依据自己公司的请求头默认值配置
self.head = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.2; WOW64; Trident/7.0; rv:11.0) like Gecko',
'Accept': 'image/gif, image/jpeg, image/pjpeg, application/x-ms-application, application/xaml+xml, '
'application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, '
'application/msword, */*',
'Accept-Language': 'zh-CN'}
# 封装自己的get请求,获取资源
def get(self, uri='', params='', data='', headers=None, cookies=None, verify=False):
if headers is None:
headers = self.head
# print("请求头是:{}".format(headers))
url = self.url + uri
response = self.req.get(url, params=params, data=data, headers=headers, cookies=cookies, verify=verify)
return response