跳转至

pytest 测试框架进阶

约 147 个字 33 行代码 1 张图片 预计阅读时间 1 分钟

Warning

本内容未完成。

Fixture

测试的前置和后置配置

例:

def inc(a, b):
    return a + b

def setup_module(module):
    print('>>> setup module...')

def teardown_module(module):
    print('>>> teardown module...')

def setup_function(function):
    print('>>> setup function...')

def teardown_function(function):
    print('>>> teardown function...')

def test_1():
    assert inc(inc(1, 2), inc(3, 4)) == inc(5, 6)

def test_2():
    assert inc(inc(2, 3), inc(4, 5)) == inc(6, 7)

执行时添加 -s 表示完整显示标准输入输出。

PS Z:\code\pytest_playground> pytest -s
============= test session starts =============

collected 2 items

test_example.py >>> setup module...
>>> setup function...
F>>> teardown function...
>>> setup function...
F>>> teardown function...
>>> teardown module...

以下略

在单文件执行过程中,这些函数作用的地点如下:

单文件执行过程中,这些函数作用的地点
单文件执行过程中,这些函数作用的地点

标记

pytest.mark

@pytest.mark.XXX

用来标记各测试函数。

参考资料

  • pytest: helps you write better programs — pytest documentation
  • Selenium3 自动化测试实战:基于 Python 语言/虫师编著. --北京:电子工业出版社,2019.7 ISBN 978-7-121-36924-7
  • Python Web 自动化测试入门与实战/杨定佳编著. --北京:清华大学出版社,2020.5 ISBN 978-7-302-55295-6