pytest高级用法,跳过、失败函数,函数数据参数化(十)

本文详细介绍了一个使用pytest测试框架的Python代码实例,包括如何定义测试函数、应用skipif和xfail装饰器来控制测试的执行,以及如何进行参数化测试。通过具体代码展示了pytest的灵活性和强大功能。
import pytest

# 被调用的函数
def abb():
    with open("./data.txt", "r") as f:
        if "2" in f.read():
            return True
        else:
            return False
# 测试类
class Test_TG:
    def test_a(self):
        print("...test_a")
        assert True

    # 根据特定的条件,不执行标识的测试函数
    @pytest.mark.skipif(abb(), reason="跳过此步骤...")
    def test_b(self):
        print("test_b")
        assert False
    # 标记测试函数为失败函数
    @pytest.mark.xfail(abb(), reason="失败不执行...")
    def test_c(self):
        print("test_c")
        assert False


def re_data_list():
    list_data = []
    with open("./data.txt", "r") as f:
        for i in f.readlines():
            data = eval(i.split("=")[-1])
            list_data.append(data)
    return list_data
# 函数数据参数化
class Test_para:
    @pytest.mark.parametrize("a,b", re_data_list())
    def test_a(self, a, b):
        print("a:%s,b:%s" % (a, b))

if __name__ == "__main__":
    pytest.main(["-s", "test_12.py", "--html=../report/report.html"])

 

转载于:https://www.cnblogs.com/zhaoquanmo/p/10772746.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值