【python 1】----Pytest基础知识

定义

用于编写和执行Python测试全功能测试框架(工具),是一个第三方库

安装

复制代码
pip insatll pytest  安装

pytest --version  校验

pytest的组成构成

不写调用语句也可以执行函数内容

在用例运行语句里面:

-s:指的是开启与终端的交互,如果没有-s(程序不会输入与打印),一条用例执行完会有个点号
-v:可以让运行结果更加详细输出
也可以缩写成-sv -vs

了解pytest的命名规则,是依靠这个命名规则去调用自己的测试用例函数(当运行了main里面的指令,会在这个当前运行指令文件相对同级的目录或者下层目录里面找test_开头或者test_结尾的.py文件,找到文件后找到以test开头的函数或者Test开头的类)

复制代码
1.只能找到test_开头或者test_结尾的文件

2.文件里面的函数必须以test开头

3.文件里面的类也必须是以Test开头

pytest常用运行方式

命令行运行:Terminal里面

%文件名%
pytest----不加参数 % pytest -s-----pytest["-s'']
指定用例运行:% pytest 测试用例的函数名称.py -s
指定文件里面的类运行:% pytest 文件名.py::类名-sv
指定文件里面类的某条用例运行:% pytest 文件名.py::类名:用例名 -sv

main里面的文件运行

pytest的用例前置和后置处理

setup:对应写功能的预置条件(登陆功能前得要注册)teardown:对应写功能的后置条件------文件的前置和后置(等同于setup_model /teardown_model)
setup_function teardown_function函数的执行前置和后置
类中的前后置:在整个类之前或者之后执行

pytest标签使用

在用例里面增加定义,可以指定用例运行和过滤用例

使用@pytest.mark.标签名

自定义标签名:不可以用数字开头,也不可以为汉字
可以在pytest.ini文件里面进行定义,这样控制台就不会打印出警告

作用:

可以运行标签名一样的用例,相当于过滤方式
跳过用例方式
支持逻辑判断( or and in not)

pytest的conftest应用

conftest.py是⼀个特殊的⽂件,⽤于管理测试⽤例中需要通⽤数据传递。

可以自动调用

可以自动打印前置和后置(基于一条用例的)

将它前置和后置换换成基于文件的,而不是基于一条用例的

只在整个大的用例里面加上前置和后置

用例参数化

pytest的ini⽂件的使⽤(文件命名必须是pyutest.ini)

配置默认的命令⾏

复制代码
[pytest]
addopts = -v -s 

配置筛选文件(关联参数实现筛选)

复制代码
[pytest]
addopts = -v -s  -k  筛选的用例名称

选择要运⾏的测试⽂件或⽬录:

复制代码
[pytest]
testpaths = tests/

自定义搜索规则

复制代码
[pytest]
python_files = test_*.py
python_classes = Test*
python_functions = test_*

禁用警告信息

复制代码
#禁用warning插件
[pytest]
addopts = --disable-warnings
相关推荐
程序员小远4 小时前
软件测试之单元测试详解
自动化测试·软件测试·python·测试工具·职场和发展·单元测试·测试用例
心无旁骛~5 小时前
python多进程和多线程问题
开发语言·python
星云数灵5 小时前
使用Anaconda管理Python环境:安装与验证Pandas、NumPy、Matplotlib
开发语言·python·数据分析·pandas·教程·环境配置·anaconda
计算机毕设匠心工作室5 小时前
【python大数据毕设实战】青少年抑郁症风险数据分析可视化系统、Hadoop、计算机毕业设计、包括数据爬取、数据分析、数据可视化、机器学习
后端·python
计算机毕设小月哥5 小时前
【Hadoop+Spark+python毕设】智能制造生产效能分析与可视化系统、计算机毕业设计、包括数据爬取、Spark、数据分析、数据可视化、Hadoop
后端·python·mysql
计算机毕设小月哥8 小时前
【Hadoop+Spark+python毕设】中风患者数据可视化分析系统、计算机毕业设计、包括数据爬取、Spark、数据分析、数据可视化、Hadoop
后端·python·mysql
Keep_Trying_Go8 小时前
基于Zero-Shot的目标计数算法详解(Open-world Text-specified Object Counting)
人工智能·pytorch·python·算法·多模态·目标统计
计算机毕设匠心工作室8 小时前
【python大数据毕设实战】强迫症特征与影响因素数据分析系统、Hadoop、计算机毕业设计、包括数据爬取、数据分析、数据可视化、机器学习、实战教学
后端·python·mysql
Trouville019 小时前
Pycharm软件初始化设置,字体和shell路径如何设置到最舒服
ide·python·pycharm