pytest skipif
时间: 2023-08-17 17:13:56 浏览: 128
引用\[1\]:在pytest中,可以使用`pytest.skip`函数来跳过测试用例。可以在测试函数或测试类中使用`pytest.skip`函数来指定跳过的原因。例如,在测试函数中使用`pytest.skip`函数可以跳过该测试函数,并在跳过时提供一个消息。示例代码如下:
```python
import pytest
def test_01():
print("我是测试函数。")
pytest.skip(msg="跳过此条用例。")
assert 1 == 1
class TestSkip:
def test_one(self):
print("test_one方法执行")
assert 1 == 1
def test_two(self):
pytest.skip(msg="跳过此条用例。")
print("test_two方法执行")
assert "king" in "hello,king"
```
在上述示例中,`test_01`函数和`test_two`方法都使用了`pytest.skip`函数来跳过测试用例,并提供了跳过的原因。当运行这些测试用例时,它们将被跳过执行。
引用\[2\]:另一种在pytest中跳过测试用例的方法是使用`pytest.mark.skip`装饰器。可以在测试函数或测试类上使用`pytest.mark.skip`装饰器来指定跳过的原因。示例代码如下:
```python
import pytest
pytestmark = pytest.mark.skip(reason="跳过当前模块")
def test_01():
print("我是测试函数。")
assert 1 == 1
class TestSkip:
def test_one(self):
print("test_one方法执行")
assert 1 == 1
def test_two(self):
print("test_two方法执行")
assert "king" in "hello,king"
```
在上述示例中,使用`pytest.mark.skip`装饰器标记了整个模块为跳过状态,并提供了跳过的原因。当运行这个模块的测试用例时,所有的测试用例都将被跳过执行。
引用\[3\]:还可以使用`pytest.mark.skip`装饰器来跳过测试函数或测试类。示例代码如下:
```python
import pytest
@pytest.mark.skip(reason="跳过测试函数的测试case")
def test_01():
print("我是测试函数。")
assert 1 == 1
class TestSkip:
@pytest.mark.skip(reason="跳过类里面case")
def test_one(self):
print("test_one方法执行")
assert 1 == 1
def test_two(self):
print("test_two方法执行")
assert "king" in "hello,king"
```
在上述示例中,使用`pytest.mark.skip`装饰器标记了`test_01`函数和`test_one`方法为跳过状态,并提供了跳过的原因。当运行这些测试用例时,它们将被跳过执行。
综上所述,pytest中可以使用`pytest.skip`函数或`pytest.mark.skip`装饰器来跳过测试用例,并提供跳过的原因。
#### 引用[.reference_title]
- *1* *2* *3* [pytest测试框架系列 - Pytest skip和skipif 跳过用例看这篇就够了!](https://blog.csdn.net/u010454117/article/details/118469127)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文