美文网首页python进阶课
pytest常用命令行选项

pytest常用命令行选项

作者: test小星星 | 来源:发表于2019-07-24 21:41 被阅读98次

pytest有丰富的命令行选项,以满足不同的需要,使用pytest --help可以查看全部选项


常用选项

  1. --collect-only 选项
    使用--collect-only选项可以展示在给定配置下哪些用例被运行。方便检查用例是否符合预期。

    --collect -only
    不加参数的执行结果
    不加参数的执行结果
  2. -v选项
    使用-v/--verbose选项,输出的信息会更详细。

    -v选项
  3. -k 选项
    -k 选项允许你使用表达式指定希望执行的测试用例。假设希望执行test_aaa()和test_bbb()这两个测试用例,那么可以用表达式"aaa or bbb"来筛选。结合-v查看是否符合预期,如下:

# 测试用例
def test_aaa():
    print('测试用例1')
    assert 1 == 1

def test_bbb():
    print('测试用例2')
    assert 2 == 2

def test_ccc():
    print('测试用例3')
    assert 3 == 3

def test_ddd():
    print('测试用例4')
    assert 4 == 4
-k选项

说明:只要符合名称的测试文件或者测试函数都会被执行。

  1. -m 选项
    标记(marker)用于标记测试并分组,以便快速选中并运行,如下
# 测试用例
@pytest.mark.a  # 标记a
def test_1(fixture_func):
    print('测试用例1')
    assert 1==1

@pytest.mark.b  # 标记b
def test_2(fixture_func):
    print('测试用例2')
    assert 2 == 2

# 如果希望同时运行它们,那么可以预先做好标记。
# 这里使用什么标记名由你自己决定。

执行结果


-m选项
  1. -x 选项
    -x选项,设置如果测试用例遇到失败时立即停止整个会话。
# 测试用例

def test_1():
    print('测试用例1')
    assert 1==2


def test_2():
    print('测试用例2')
    assert 2 == 2

不加-x执行结果


不加-x执行结果

加上-x结果


image.png
  1. --maxfail=num选项
    -x选项的特点是, 一旦遇到测试失败,就会全局停止。如果你希望pytest失败几次后再停止,则可以使用--maxfail选项,明确指定要以失败几次。 如设置--maxfail=2,则需要遇到两次错误才会停止,这样前面只存在一个失败测试的就会全都被执行。如下图:

一个失败测试用例


def test_1():
    print('测试用例1')
    assert 1==2

def test_2():
    print('测试用例2')
    assert 2 == 2

def test_3():
    print('测试用例3')
    assert 3 == 3

--maxfail=2 执行结果


--maxfail=2执行结果

可以看出--maxfail=2 时有一个失败的测试用例也会全部执行完成。
修改测试用例,改成失败2次

def test_1():
    print('测试用例1')
    assert 1==2

def test_2():
    print('测试用例2')
    assert 2 == 3

def test_3():
    print('测试用例3')
    assert 3 == 3

执行结果


--maxfail=2执行结果2

由于失败用例等于2次所以后面的测试用例就不会执行了。

相关文章

  • pytest常用命令行选项

    pytest有丰富的命令行选项,以满足不同的需要,使用pytest --help可以查看全部选项 常用选项 --c...

  • 学习笔记-Pytest(七)命令行传参

    1. 前言 命令行参数是根据命令行选项将不同的值传递给测试函数,比如平常在cmd执行”pytest —html=r...

  • Pytest:执行方式

    执行方式 为pytest命令行方式+ 通过python代码执行pytest pytest命令行执行 在控制台执行 ...

  • Pytest:用法

    获取有关版本、选项名称、环境变量的帮助 pytest --version 查看pytest版本pytest --...

  • pytest的报告产出

    pip install pytest-html 安装插件 命令行执行: pytest --html=report_...

  • pytest如何实现失败重跑

    pytest-rerunfailures pytest-rerunfailures是属于pytest的插件,通常用...

  • Windows上安装pytest

    命令行输入:pip install pytest如果报错: 需要更改命令:pip install pytest -...

  • pytest常用配置文件之pytest.ini

    pytest.ini:pytest的主配置文件,可以改变pytest的默认行为,有很多可配置的选项。conftes...

  • Pytest03-pytest命令行参数

    3.pytest命令行参数 3.1 pytest控制台信息详解     通常在运行pytest之后,会出现如下所示...

  • 了解pytest配置文件

    pytest.ini pytest的主配置文件,可以改变pytest的默认行为,其中有很多可配置的选项。 1、 可...

网友评论

    本文标题:pytest常用命令行选项

    本文链接:https://www.haomeiwen.com/subject/rjofrctx.html