Pytest:帮助您编写更好的程序?

这个 pytest 框架使编写小测试变得容易,但是可以扩展到支持应用程序和库的复杂功能测试。

简单测试示例:

# content of test_sample.py
def inc(x):
    return x + 1


def test_answer():
    assert inc(3) == 5

执行:

$ pytest
=========================== test session starts ============================
platform linux -- Python 3.x.y, pytest-4.x.y, py-1.x.y, pluggy-0.x.y
cachedir: $PYTHON_PREFIX/.pytest_cache
rootdir: $REGENDOC_TMPDIR
collected 1 item

test_sample.py F                                                     [100%]

================================= FAILURES =================================
_______________________________ test_answer ________________________________

    def test_answer():
>       assert inc(3) == 5
E       assert 4 == 5
E        +  where 4 = inc(3)

test_sample.py:6: AssertionError
========================= 1 failed in 0.12 seconds =========================

由于 pytest 详细的断言反省,只是简单的 assert 使用语句。见 Getting Started 更多示例。

特征?

  • 失败的详细ag捕鱼王网站|首页 assert statements (不需要记住 self.assert* 姓名);

  • Auto-discovery 测试模块和功能;

  • Modular fixtures 用于管理小型或参数化的长期测试资源;

  • 可以运行 unittest (包括审判)和 nose 测试套件开箱即用;

  • python 2.7、python 3.4+、pypypy 2.3、jython 2.5(未测试);

  • 丰富的插件架构,超过315+ external plugins 繁荣的社区;

AG怎么下载|首页?

请看 Contents 完整的AG怎么下载|首页,包括安装、教程和PDFAG怎么下载|首页。

错误/请求?

请使用 GitHub issue tracker 提交错误或请求功能。

Changelog?

咨询 Changelog 每个版本的修复和增强。

许可?

版权所有Holger Krekel等人,2004-2017。

根据 MIT 许可证,pytest是免费的开源软件。