标记功能预期失败的用例-xfail

介绍

xfail 是用来标记那些预期失败的用例,它是一个内部标记

将用例标记失败

  • 不同的标记方法使用示例

    @pytest.mark.xfail
    def test_01():
        pass
    
    @pytest.mark.xfail(reason="功能还未提测")
    def test_01():
        pass
    
    def test_01():
      if 2>1:
          pytest.xfail(reason="功能还未提测")
    
    

xfail 可用的参数

  • condition在制定条件下失败,可以将条件作为第一个参数

    @pytest.mark.xfail(2>1,reason="功能还未提测")
    
    
  • reasoon可以指定失败的原因

    @pytest.mark.xfail(reason="功能还未提测")
    
  • raises指定单个异常或异常元组

    @pytest.mark.xfail(raises=ValueError)
    def test_01():
        raise AttributeError('属性报错')
    
  • run设置False的时候报告xfail,设置Treu的时候报告xpass

    @pytest.mark.xfail(run=False)
    def test_01():
        pass
    
  • strict 设置False的时候报告xpass,设置Treu的时候报告failed

    @pytest.mark.xfail(run=False)
    def test_01():
       pass
    

忽略xfail

  • 通过命令行执行,通过runxfail 忽略标记的xfail,就像没有标记xfail一样
    pytest -- runxfail
    
  • 通过配置文件pytest.ini忽略
    xfail_strict=true
    

xfail官网文档

posted @ 2022-11-12 11:57  zhq9  阅读(14)  评论(0编辑  收藏  举报