pytest中的markers
时间: 2023-10-26 20:17:56 浏览: 132
pytest之mark功能.docx
在 Pytest 中,marker 是用来给测试函数打标签的一种机制。通过使用 marker,我们可以更方便地对测试函数进行分类、筛选和执行。
在 Pytest 中,我们可以通过在测试函数的定义上使用装饰器 @pytest.mark 来给测试函数打标签。例如,我们可以定义一个名为 slow 的 marker,来标记那些需要较长时间运行的测试函数:
```python
import pytest
@pytest.mark.slow
def test_my_slow_function():
# ...
```
然后,我们可以通过使用 -m 命令行选项来只运行被标记为 slow 的测试函数:
```
pytest -m slow
```
除了使用预定义的 marker,我们还可以通过自定义 marker 来为测试函数打上我们自己的标签。例如,我们可以定义一个名为 my_marker 的 marker:
```python
import pytest
my_marker = pytest.mark.my_marker
@my_marker
def test_my_function():
# ...
@my_marker
def test_another_function():
# ...
```
然后,我们可以通过 -m 命令行选项来只执行被标记为 my_marker 的测试函数:
```
pytest -m my_marker
```
阅读全文