pytest除了测试函数中使用这个方法pytest.xfail()外,xfail还有一种使用方法。就是@pytest.mark.xfail()标记预期会失败的用例,即期望测试用例是失败的,但是不会影响测试用例的的执行。

标记的用例运行后,断言失败,所以结果是xfailed,也没有像正常一样显示出错误用例及具体信息。

预期会失败,实际断言失败xfailed

#!/usr/bin/env python
# _*_coding:utf-8_*_
import pytestclass Test(object):@pytest.mark.xfail(reason="预期失败")def test_login_01(self):"""用例1"""print('执行用例test_login_01断言1')pytest.assume(1 == 0)print('执行用例test_login_01断言2')pytest.assume(2 == 2)if __name__ == '__main__':pytest.main(['-v', '-s', 'test_01.py'])C:\Users\admin\AppData\Local\Programs\Python\Python37\python.exe C:/Users/admin/Desktop/AutoTest/Test/test/test_01/test_01.py
============================= test session starts =============================
platform win32 -- Python 3.7.4, pytest-5.4.2, py-1.8.1, pluggy-0.13.1 -- C:\Users\admin\AppData\Local\Programs\Python\Python37\python.exe
cachedir: .pytest_cache
rootdir: C:\Users\admin\Desktop\AutoTest\Test\test\test_01
plugins: assume-2.2.1, ordering-0.6
collecting ... 收集的测试用例:[<Function test_login_01>]
collected 1 itemtest_01.py::Test::test_login_01 执行用例test_login_01断言1
执行用例test_login_01断言2
XFAIL============================= 1 xfailed in 0.07s ==============================Process finished with exit code 0

标记的用例运行后,断言成功,所以结果是xfailed,也没有像正常一样显示出错误用例及具体信息

预期会失败,实际断言成功xpassed

#!/usr/bin/env python
# _*_coding:utf-8_*_
import pytestclass Test(object):@pytest.mark.xfail()def test_login_02(self):"""用例2"""print('执行用例test_login_02断言1')pytest.assume(3 == 3)print('执行用例test_login_02断言2')pytest.assume(True)if __name__ == '__main__':pytest.main(['-v', '-s', 'test_01.py'])C:\Users\admin\AppData\Local\Programs\Python\Python37\python.exe C:/Users/admin/Desktop/AutoTest/Test/test/test_01/test_01.py
============================= test session starts =============================
platform win32 -- Python 3.7.4, pytest-5.4.2, py-1.8.1, pluggy-0.13.1 -- C:\Users\admin\AppData\Local\Programs\Python\Python37\python.exe
cachedir: .pytest_cache
rootdir: C:\Users\admin\Desktop\AutoTest\Test\test\test_01
plugins: assume-2.2.1, ordering-0.6
collecting ... 收集的测试用例:[<Function test_login_02>]
collected 1 itemtest_01.py::Test::test_login_02 执行用例test_login_02断言1
执行用例test_login_02断言2
XPASS============================= 1 xpassed in 0.04s ==============================Process finished with exit code 0

Pytest标记预期失败得测试用例@pytest.mark.xfail()相关推荐

  1. pytest之标记会失败的测试:pytest.mark.xfail

    可以在用例之前加上:@pytest.mark.xfail(),使用xfail标记,则告诉pytest运行此次测试,但是我们预期它会失败. 接着查看控制台输出结果,如果出现了小x或者X x代表XFAIL ...

  2. 【pytest官方文档】解读- 如何自定义mark标记,并将测试用例的数据传递给fixture函数

    在之前的分享中,我们知道可以使用yield或者return关键字把fixture函数里的值传递给test函数. 这种方法很实用,比如我在fixture函数里向数据库里插入必要的测试数据,那我就可以把相 ...

  3. pytest测试框架(五)---使用xfail将用例标记为失败

    一.简介 当因为一个确切的原因,我们知道这个用例会执行失败,比如用例所覆盖的功能还未实现,或者这个功能存在阻塞性的已知Bug时,就可以使用xfail将其标记起来. 二.xfail的使用方法 1.@py ...

  4. Pytest标记用例失败之xfail

    项目自动化测试中,如果接口2依赖接口1的响应结果值,或者用例2依赖用例1的响应结果值,自然需要与接口1或用例1进行关联,但是当接口1或用例1执行失败,接口2或用例2一定也是失败的,所以这时不必要再进行 ...

  5. Pytest参数选项自由执行测试用例详解(二)

    运行pytest可以指定目录和文件,如果不指定,pytest会搜索当前目录及其子目录中以test_开头或以_test结尾得测试函数.我们把pytest搜索测试文件和测试用例的过程称为测试搜索(test ...

  6. Python Pytest自动化测试 断言失败后续代码继续执行

    Time will tell. 做自动化测试时我们一般会一个用例写多个断言,而当第一个断言失败后,后面的代码就不会执行.这时我们可以引进pytest-assume插件来解决这些问题. 一.安装 pip ...

  7. pytest.ini配置文件详解【pytest系列 12】

    1.pytest中的配置文件的作用 pytest.ini pytest的主配置文件,可以改变pytest的默认行为,即pytest会读取该配置信息,然后按照指定的方式去运行 conftest.py 测 ...

  8. pytest学习和使用12-Unittest和Pytest参数化详解

    12-Unittest和Pytest参数化详解 1 Unittest参数化 1.1 ddt 1.1.1 简介 1.1.2 说明 1.1.3 安装 1.1.4 版本信息 1.1.5 实例1 1.1.6 ...

  9. pytest文档18-配置文件pytest.ini

    前言 pytest配置文件可以改变pytest的运行方式,它是一个固定的文件pytest.ini文件,读取配置信息,按指定的方式去运行. ini配置文件 pytest里面有些文件是非test文件 py ...

最新文章

  1. 【 C 】经典抽象数据类型(ADT)之堆栈(用静态数组实现堆栈)
  2. jQuery之简单的表单验证
  3. 查询 oracle_关于oracle和mysql数据库的查询问题
  4. 如何操作SAP UI5应用Footer区域工具栏按钮的背景颜色
  5. Scala里Unit 与 () Unit的区别
  6. Scylla——开源免费的优秀代理 IP 池:自动验证、JSON API、基于 React 的 Web UI、Docker 支持...
  7. mysql内部实现原理面试_理解完这些基本上能解决面试中MySql的事务问题
  8. BDKRHash详解
  9. 如何训练您的医生...使用开源
  10. es6 Object.getPrototypeOf()方法
  11. 冬小麦病虫害的高光谱识别方法研究
  12. Srs之Clion编译
  13. Spring AOP切面的执行顺序
  14. iOS开发中使用代码控制横竖屏的切换
  15. 兜兜转转,2020已过半
  16. NBOJ 1181 Big Mouth of Abyss - Kog'Maw
  17. 使用Photoshop软件巧去影像的白点空洞
  18. anaconda企业版下载_Anaconda免费版下载-多功能Python集成开发环境 v2020.02 免费版 - 安下载...
  19. 紫书 习题 11-12 UVa 1665 (并查集维护联通分量)
  20. nginx做地域限制

热门文章

  1. MySQL 索引类别与索引使用指南
  2. python继承语法_python中继承父类的例子(python3的语法)
  3. nvidia控制面板点了没反应win7_win7系统Nvidia控制面板怎么设置?
  4. Java基础日常总结!!
  5. css div里引用em字体会变斜体_CSS文字加粗斜体[解决代码]
  6. 输入两个数、用python求他们的和_从键盘上输入俩个实型数,编程求它们的和差积商,要求输出时,保留两位小数C语言编程题:从键盘上输入两个...
  7. 电脑表格制作教程入门_第三节 CorelDRAW制作作品的流程 - CorelDRAW基础入门教程 - 平面设计学院...
  8. 下载java离线文档的方法
  9. mysql5.5编译安装脚本_mysql5.5 免编译安装及脚本启动报错深入
  10. python mysql dbutils_python操作mysql数据库增删改查的dbutils实例