当前位置: 首页 > article >正文

pytest.ini、pytest运行参数以及使用markers标记测试用例

文章目录

  • 1.pytest.ini简介
  • 2.使用pytest.ini进行配置
  • 3.使用markers标记测试用例
  • 4.pytest运行参数

1.pytest.ini简介

pytest.ini是 pytest 测试框架的配置文件,用于配置 pytest 的行为和参数。
作用:

  1. 配置测试运行参数:可以在pytest.ini中设置各种参数,如测试用例的搜索路径、测试报告的格式和输出路径、测试执行的超时时间等。
  2. 标记和筛选测试用例:通过在pytest.ini中定义标记,可以对测试用例进行分类和筛选。

2.使用pytest.ini进行配置

首先需要在当前目录的下一级下创建pytest.ini文件。别不要建错地方!
示例:

[pytest]
testpaths = ./testcases/

上面就是指定了测试用例的执行路径。
可以看到也是成功执行了testcases/下的用例
在这里插入图片描述
[pytest]下的常见配置:

  • addopts:用于指定额外的命令行选项。例如addopts = -s -v表示在运行测试时启用详细输出和允许输出打印信息。
  • testpaths:指定测试用例的搜索路径。可以是相对路径或绝对路径,多个路径之间用空格分隔。例如testpaths = tests integration_tests。
  • python_files:指定测试文件的命名规则。默认是test_.py和test.py,可以根据项目需求进行修改。例如python_files = test.py mytests_.py。
  • python_classes:指定测试类的命名规则。默认是Test*,即测试类名以Test开头。
  • python_functions:指定测试函数的命名规则。默认是test_*,即测试函数名以test开头。

3.使用markers标记测试用例

在 pytest 中,markers 是一种非常有用的功能,它可以对测试用例进行标记,以便实现更灵活的测试执行和分组等操作。
**可以在pytest.ini文件中定义自定义的 markers。**例如:

[pytest]
markers =
    smoke: 冒烟测试标记
    regression: 回归测试标记

这里创建了冒烟测试和回归测试的标记,我们就可以使用这个标记为测试用例进行标记。
如下所示:

import pytest

@pytest.mark.smoke
def test_01():
    assert 1==1
    
@pytest.mark.regression
def test_02():
    assert 2==2

运行时可以指定执行被标记的测试用例。
在这里插入图片描述
如果不想每次都输入-m smoke,我们可以把这部分放到pytest.ini下。
在这里插入图片描述

4.pytest运行参数

pytest 提供了丰富的运行参数,这些参数可以帮助你更灵活地控制测试执行过程、输出测试结果、过滤测试用例等。
常见的运行参数如下:

参数说明
-m执行指定的测试用例
-k执行用例包括“关键字”的测试用例
-q简化控制台输出
-v更加详细的输入用例的执行信息
-s输入测试用例中的调试信息

http://www.kler.cn/a/564621.html

相关文章:

  • Linux mount命令
  • (十 二)趣学设计模式 之 享元模式!
  • java练习(45)
  • Android 开发使用 AI 提升效率
  • 剑指 Offer II 036. 后缀表达式
  • 什么是分布式事务?
  • 表格软件推荐:为何选择VeryReport让数据分析和报表生成更高效?
  • React 源码揭秘 | 更新队列
  • Metal学习笔记八:纹理
  • 【MATLAB源码-第268期】基于simulink的永磁同步电机PMSM双闭环矢量控制系统SVPWM仿真,输出转速响应曲线。
  • MySQL 事务笔记
  • openssl的aes128_ECB加密解密运算实例
  • 自动化反编译微信小程序工具-e0e1-wx
  • 基于大数据的去哪儿网景区可视化及协同过滤推荐系统
  • 解锁CSnakes:.NET与Python的融合魔法
  • 事务的隔离级别
  • 深度学习中的 shape以及 axis的含义以及使用
  • java23种设计模式-状态模式
  • vue框架后遗症∶被遗忘的dom操作
  • 蓝耘科技发布DeepSeek满血版:引领AI推理革新,开启智慧新时代