pytest---设置用例依赖关系( pytest-dependency)

前言

编写测试用例之间讲究独立性,那么如果用例之间无法做到独立性,当第1个用例失败的时候与其存在依赖关系的用例也随之失败,那么这个时候有没有什么办法可以将当用例失败后,与其有依赖关系的用例将其不执行。pytest中的插件pytest-dependency将完美的解决了这个问题。

pytest-dependency

pytest-dependency:属于pytest的插件,用来标记用例之间的依赖关系。

安装:pip install pytest-dependency

源码:https://github.com/RKrahl/pytest-dependency

使用方法:

编写测试用例的时候,我们遇到相互依赖的关系,我们可以通过@pytest.mark.dependency装饰器的方法来添加test_01和test_02之间的相互依赖关系

import pytest
class TestCase:
    @pytest.mark.dependency()
    def test_01(self):
        print('测试用例01')
        assert 1 == 2
    @pytest.mark.dependency(depends=['test_01'])
    def test_02(self):
        print('测试用例02依赖测试用例01')

通过cmd运行上述代码,通过下图可以看到,test_01失败了,然后test_02就不继续执行了,这里

方法二:

上述方法通过之间标注对应测试用例完成依赖关系,这里还有一种方法是,通过相同标注的名称来判断是否处于依赖关系

# coding:utf-8
import pytest

class TestCase:

    @pytest.mark.dependency(name='test')
    def test_01(self):
        print('测试用例03')
        assert 1==1
    @pytest.mark.dependency(depends=['test'])
    def test_02(self):
        print('测试用例04依赖测试用例03')

通过cmd进行运行代码,可以发现test_01执行成功后相互依赖的test_02也进行了运行。

posted @ 2023-02-14 16:07  测试-安静  阅读(603)  评论(0)    收藏  举报