IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> pytest框架系列—标记测试用例为预期失败(@pytest.mark.xfail) -> 正文阅读

[开发测试]pytest框架系列—标记测试用例为预期失败(@pytest.mark.xfail)

前言

①我们平时在写测试用例的过程中,有时会遇到【已知由于某些原因,某些场景是有问题的,或者是功能暂时没有实现】这种情况,那么测试用例执行的时候我们就知道这个测试用例会失败,也就是预期失败,这个时候我们就可以使用?@pytest.mark.xfail?装饰器来标记测试用例为预期失败函数。

②当某个bug,修复优先级比较低,暂时不用修复。此时,在自动化用例运行过程中,此用例的执行结果肯定是失败的,那么我们就可以用?@pytest.mark.xfail?装饰器来标记此用例,用例执行的结果会被标记为?xfailed?,而不是?failed?。

使用?xfail?标记希望的测试用例失败;会运行此测试用例,但是在测试报告中会将其列在【预期失败(XFAIL)】或【意外成功(XPASS)】部分。

如下实例:

import pytest


@pytest.mark.xfail(reason="这个用例实际返回结果与预期不一致")
def test_001():
    assert 1 == 2


@pytest.mark.xfail(reason="这个用例实际返回结果与预期一致")
def test_002():
    assert 8 == 8


def test_003():
    assert 6 == 6

运行结果:

当然还可以在测试用例中用?xfail?标记强制标识测试用例预期失败:【具体参考pytest之skip标记】

def test_function():
    if not valid_config():
        pytest.xfail("failing configuration (but should work)")

pytest.mark.xfail装饰器使用方法

pytest默认不显示执行结果为?xfail?的测试用例的详细信息,但是我们可以通过pytest命令行参数?-r?选项使其显示出来;

测试用例的执行结果通常一个字母代表一种类型,具体的规则如下:(f)ailed, (E)rror, (s)kipped, (x)failed, (X)passed, (p)assed, (P)assed with output, (a)ll except passed(p/P), or (A)ll

所以,使用pytest -rxX 方式执行,能够显示结果为XFAIL和XPASS用例的详细信息。

实例

#test_xfail.py

import pytest

class TestMyCode:

    @pytest.mark.xfail(reason="bug待修复【OPRAUPL-7166】")
    def test_xfail_001(self):
        assert 1 == 2

运行结果①:

当此bug被修复后,用例执行通过,但是因为我们打了?@pytest.mark.xfail?标记,所以执行的结果被统计为?xpassed?。

此时测试代码如下:

import pytest

class TestMyCode:

    @pytest.mark.xfail(reason="bug已修复【OPRAUPL-7166】")
    def test_xfail_002(self):
        assert 1 == 1

运行结果②:

这样将显式地提醒我们:当业务逻辑有变化,或者有bug被修复时,我们的测试用例可能同样需要调整,需要引起注意。

我这里给你们分享一下我所积累和真理的文档和学习资料有需要是领取就可以了

1、学习思路和方法

这个大纲涵盖了目前市面上企业百分之99的技术,这个大纲很详细的写了你该学习什么内容,企业会用到什么内容。总共十个专题足够你学习

2、想学习却无从下手,该如何学习?

这里我准备了对应上面的每个知识点的学习资料、可以自学神器,已经项目练手。

3、软件测试/自动化测试【全家桶装】学习中的工具、安装包、插件....

4、有了安装包和学习资料,没有项目实战怎么办,我这里都已经准备好了往下看

最后送上一句话:
世界的模样取决于你凝视它的目光,自己的价值取决于你的追求和心态,一切美好的愿望,不在等待中拥有,而是在奋斗中争取。
如果我的博客对你有帮助、如果你喜欢我的文章内容,请 “点赞” “评论” “收藏” 一键三连哦!

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2022-09-15 02:18:01  更:2022-09-15 02:18:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/17 22:46:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码