Pytest框架速成

一、pytest下载

在pycharm终端处输入

python 复制代码
pip install pytest -U

二、启动方式

1.命令,在终端处输入

python 复制代码
pytest

2.代码

python 复制代码
import pytest
pytest.main()

三、常见参数

python 复制代码
pytest -v //增加详细程度
pytest -s //在用例中正常的使用输入输出
pytest -x //快速输出,遇到失败用例时停止执行
pytest -m //用例筛选

四、标记Mark

1.用户自定义标记

先注册>再标记>后筛选

注册(pytest.ini)中编辑
标记

利用装饰器,例:

python 复制代码
@pytsest.mark.api //等装饰器
筛选
python 复制代码
pytest -m api //等
框架内置标记

五、数据驱动测试参数

数据驱动测试=参数化测试+测试文件

根据数据文件的内容,动态决定用例的数量、内容

建立.csv文件在文件中写入参数化数据然后导入文件import csv,进行用例编写

六、fixture夹具(前后置脚本的运行)

1.创建

python 复制代码
@pytest.fixture
def a():
    #前置脚本
    yield
    #后置脚本

2.使用

1)

python 复制代码
@pytest.mark.usefixtures("a")
def test():

2)在用例的参数列表中加入fixture名字

3.进阶

1.自动

python 复制代码
@pytest.fixture(autouse=True)#自动使用

2.接口关联

3.全局共享

创建conftest.py文件放根目录,将fixture内容写进文件中,即可全局调用。

七、插件

1.使用

python 复制代码
-p 插件名称 #启动
-p no:插件名称#关闭

2.常用第三方插件

1.pytest-html

生成html测试报告

终端输入:

2.pytest-xdist分布式执行

-n 次数

3.pytest-rerunfailures用例失败后重新执行

--rerun 次数 --rerun-delay 等待时间

4.pytest -result-log

将用例的执行结果记录到日志中,在ini中配置使用

八、YMAL文件格式

1.安装

python 复制代码
pip install PyYAML

2.编写

3.加载

九、封装接口自动化框架

1.请求接口

外部工具:request

地址、方法

python 复制代码
requests.get(url="http://google.com")

请求头

python 复制代码
method='post'

参数内容

相关推荐
AI进化营-智能译站几秒前
ROS2 C++开发系列11-VS Code一键生成Doxygen注释|让ROS2节点文档自动跟上代码迭代
java·数据库·c++·ai
村头的猫7 分钟前
JWT 令牌的工作原理,结构和签名验证
前端·数据库·经验分享·微服务
许彰午8 分钟前
CacheSQL(四):CacheSQLClient——用一张路由表实现水平扩展
java·数据库·缓存·系统架构·政务
Lyyaoo.8 分钟前
缓存穿透/雪崩/击穿
数据库·缓存·oracle
许彰午12 分钟前
CacheSQL(三):双 HTTP 引擎与 SQL 查询——接口抽象的价值
java·数据库·sql·缓存
lKWO OMET13 分钟前
mysql之字符串函数
android·数据库·mysql
Flying pigs~~9 小时前
RAG智慧问答项目
数据库·人工智能·缓存·微调·知识库·rag
misL NITL10 小时前
mysql之如何获知版本
数据库·mysql
许彰午10 小时前
CacheSQL(二):主从复制——OpLog 环形缓冲区与故障自动恢复
java·数据库·缓存
2401_8323655211 小时前
JavaScript中rest参数(...args)取代arguments的优势
jvm·数据库·python