pytest学习笔记05-用例的跳过

在实际工作中我们并不是所有用例都每次必须执行的,所以我们就需要用到跳过执行,跳过分为有条件跳过和无条件跳过

我们先来看看无条件跳过的方法

@pytest.mark,skip(reason='')这个方法的作用是无条件直接跳过写在下面的那条用例

代码示例:

import pytest


class TestLogin:
def test_08(self):
print("你好08")

@pytest.mark.skip(reason='我不想执行这条用例')
def test_01(self):
print("你好01")

@pytest.mark.run(order=1)
@pytest.mark.usermanage
def test_05(self):
print("你好05")

@pytest.mark.run(order=2)
@pytest.mark.smoke
def test_03(self):
print("你好03")

运行结果:

 

 这里可以看到执行了3条用例,而test_01被跳过没有执行

看完了无条件跳过,再来看看有条件跳过的方法

@pytest.mark.skipif(条件,reason='')这个方法就是当满足条件时跳过被标记的用例,什么是被标记?就是这个装饰器下面的第一条用例

代码实例:

import pytest

num = 11


class TestLogin:

@pytest.mark.skipif(num > 10, reason="数太大啦")
def test_08(self):
print("你好08")

@pytest.mark.skip(reason='我不想执行这条用例')
def test_01(self):
print("你好01")

@pytest.mark.run(order=1)
@pytest.mark.usermanage
def test_05(self):
print("你好05")

@pytest.mark.run(order=2)
@pytest.mark.smoke
def test_03(self):
print("你好03")

运行结果:

 

 这里num比10大,所以跳过了这一条用例,skipif()中加的就是条件,如果满足条件就跳过,如果不满足条件就继续执行这个用例

posted @ 2021-12-28 01:03  Rookie_C  阅读(172)  评论(0编辑  收藏  举报