pytest(十二)--skip跳过用例

前言

pytest.mark.skip可以标记无法在某些平台上运行的测试功能,或者你希望失败的测试功能

skip意味着只有在满足条件时才希望测试通过,否则pytest应该跳过运行测试。常见示例是在非windows平台上跳过仅限windows的测试,或跳过测试依赖于当前不可用的外部资源(例如数据库)。

xfail意味着您希望测试由于某种原因而失败。一个常见的例子是对功能的测试尚未实施,或尚未修复的错误。当测试通过时尽管预计会失败(标有pytest.mark.xfail),它是一个xpass,将在测试摘要中报告。

pytest计数并分别列出skip和xfail测试。未显示有关跳过/xfailed测试的详细信息默认情况下,以避免混乱输出。您可以使用-r选项查看与"short"字母对应的详细信息显示在测试进度中

pytest -rxXs # show extra info on xfailed, xpassed, and skipped tests

有关-r选项的更多详细信息,请运行pytest -h

skip

pytest(十二)--skip跳过用例_第1张图片

# coding:utf-8
import pytest
def test_a():
    assert "a" in "ab"
@pytest.mark.skip(reason="no env,can't test")
def test_b():
    assert "c" in "ab"
if __name__=="__main__":
    pytest.main(["-s","test_fix1.py"]) 

运行结果:

pytest(十二)--skip跳过用例_第2张图片

skipif

pytest(十二)--skip跳过用例_第3张图片

pytest(十二)--skip跳过用例_第4张图片

skip类或模块

pytest(十二)--skip跳过用例_第5张图片

pytest(十二)--skip跳过用例_第6张图片

skip文件或目录

有时您可能需要跳过整个文件或目录,例如,如果测试依赖于特定于Python的版本功能或包含您不希望pytest运行的代码。在这种情况下,您必须排除文件或目录来自收藏。

skip缺少导入依赖项

pytest(十二)--skip跳过用例_第7张图片

概要

pytest(十二)--skip跳过用例_第8张图片

你可能感兴趣的:(pytest,python)