python pytest assume 插件

95 篇文章 2 订阅
8 篇文章 1 订阅
文章讨论了在测试用例中,即使步骤失败也不会立即导致整个测试失败的情况。为了解决这个问题,推荐安装并使用pytest-assume插件。然而,这会导致Allure报告中无法清晰标记失败步骤。为了解决报告的不清晰,文章提供了结合pytest-assume和allure库的使用示例,通过with语句和step装饰器来确保失败步骤能被正确记录。
摘要由CSDN通过智能技术生成

问题

测试case由多个步骤组成。
步骤fail 不能直接导致case 失败

解决方法

安装插件 pip3 install pytest-assume

import pytest
with pytest.assume:
    assert ok is True

**注意事项:**会提示找不到 assume, 但是不影响

存在问题

步骤失败可以继续执行,但是不会在 allure 报告中标记步骤失败。存在报告不清晰情况
在这里插入图片描述

解决方法

参考链接

from pytest_assume.plugin import assume
from allure import step

def test_issue594_reproduction():
    with step("Outer step"):
        with assume, step("Inner step"):
            assert False

def test_issue594_reproduction2():
    with step("Outer step"):
        with assume:
            with step("Inner step"): # an AssertionError first fails the step and only then is swallowed by assume
                assert False
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值