1.无条件跳过:@pytest.mark.skip(“无条件跳过”)
2.有条件跳过:@pytest.mark.skipif():需要传两个参数,第一个是true或者false,第二个是原因
例:@pytest.mark.skipif(sys.platform in [“win32”, “darwin”], reason=”不是在服务器上,不执行该条case”)
3.跳过可以放在方法上,也可以放在类上面
import pytest
import sys
class TestCase:
@pytest.mark.skip("无条件跳过")
# 无条件跳过,就是不执行,需要传一个字符串,说明跳过原因
def test_print(self):
print("test_print")
@pytest.mark.skipif(sys.platform in ["win32", "darwin"], reason="不是在服务器上,不执行该条case")
# if需要传2个参数,第一个参数是一个布尔值,true或者false,第二个参数是跳过的原因,reason这个参数是必传的
# 带条件的跳过,比如说当运行在本地的时候,不执行这条case,本地电脑一般是mac或者Windows,这里判断一下
def test_hello(self):
print("test_hello")
def test_normal(self):
print("我是一个不跳过的case")
@pytest.mark.skip("跳过整个类") # 也可以把装饰器加在类上面,跳过整个测试类
class TestCase2:
def test_mygod(self):
print("我是一个不跳过的case")
def test_my(self):
print("我是一个不跳过的case")
if __name__ == '__main__':
pytest.main([__file__])