pytest.ini、pytest运行参数以及使用markers标记测试用例
文章目录
- 1.pytest.ini简介
- 2.使用pytest.ini进行配置
- 3.使用markers标记测试用例
- 4.pytest运行参数
1.pytest.ini简介
pytest.ini是 pytest 测试框架的配置文件,用于配置 pytest 的行为和参数。
作用:
- 配置测试运行参数:可以在pytest.ini中设置各种参数,如测试用例的搜索路径、测试报告的格式和输出路径、测试执行的超时时间等。
- 标记和筛选测试用例:通过在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 | 输入测试用例中的调试信息 |