合集-Pytest官方教程
摘要:目录 "Pytest权威教程01 安装及入门" "Pytest权威教程02 Pytest 使用及调用方法" "Pytest权威教程03 原有TestSuite的执行方法" "Pytest权威教程04 断言的编写和报告" "Pytest权威教程05 Pytest fixtures:清晰 模块化 易扩展
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 安装及入门 Python支持版本 : Python 2.6,2.7,3.3,3.4,3.5,Jython,PyPy 2.3 支持的平台 : Unix/Posix and Windows PyPI包名 : pytest 依赖项 : py,colorama
阅读全文
摘要:[TOC] "返回: Pytest权威教程" Pytest 使用及调用方法 使用python m pytest调用pytest 2.0版本新增 你可以在命令行中通过Python编译器来调用Pytest执行测试: 通过 调用会将当前目录也添加到 中,除此之外,这几乎等同于命令行直接调用 。 可能出现的
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 原有TestSuite的执行方法 Pytest可以与大多数现有的测试套件(testsuite)一起使用,但是它的加载方式方式不像nose或Python的默认单元测试框架的测试运行器(test runner)。 在使用本节之前,你需要安装pytest。 使
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 断言的编写和报告 使用assert语句进行断言 pytest允许你使用标准的Python 断言语句来验证测试中的期望结果和实际结果。 例如,你可以编写以下内容: 来断言你的函数返回一个特定的值。 如果此断言失败,你将看到函数调用的返回值: 支持显示常见的
阅读全文
摘要:返回: Pytest权威教程 Fixture函数:清晰 模块化 易扩展 2.0/2.3/2.4版本新函数 text Fixture函数的目的是为测试的重复执行提供一个可靠的固定基线。Fixture函数比经典的xUnit setUp/tearDown方法有着显着的改进: Fixture函数具有明确的名
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 使用Marks标记测试用例 通过使用 你可以轻松地在测试用例上设置元数据。例如, 一些常用的内置标记: skip 始终跳过该测试用例 skipif 遇到特定情况跳过该测试用例 xfail 遇到特定情况,产生一个“期望失败”输出 parametrize 在
阅读全文
摘要:[TOC] "返回: Pytest权威教程" "返回: Pytest权威教程" Monkeypatching,对模块和环境进行Mock 有时,测试需要调用依赖于全局设置的函数,或调用无法轻松测试的代码(如网络访问)。 monkeypatch fixture可帮助你安全地设置/删除属性,字典项或环境变
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 使用tmp目录和文件 tmp_path Fixture方法 3.9版本新函数 你可以使用 在临时目录根目录中创建一个独立的临时目录以供测试调用。 是一个 对象。以下是测试使用方法的示例如: 运行这个,我们可以看到,除了 这一行,其他断言都正常测试通过:
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 捕获标准输出及标准错误输出 默认 stdout/stderr/stdin 捕获行为 在测试执行期间,程序中的标准输出/标准错误输出都会被捕获到。 如果测试或setup方法执行失败时,会在报错追溯信息中查看到程序中的标准输出及标准错误输出。(可以通过 命令
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 捕获警告信息 3.1版中的新函数。 从版本开始 ,pytest现在会在测试执行期间自动捕获警告并在会话结束时显示它们: 运行pytest现在产生这个输出: 可以传递该标志以控制将显示哪些警告,甚至将其转换为错误: 可以 使用 ini选项在文件中设置相同的
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 模块及测试文件中集成doctest测试 编码 使用doctest选项 默认情况下,Pytest按照python 模块标准 模式进行匹配。你也可以通过使用以下命令更改匹配模式: 在命令行上。从版本开始 ,` doctest glob`可以在命令行中多次使用
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 跳过(Skip)及预期失败(xFail): 处理不能成功的测试用例 你可以标记无法在某些平台上运行的测试用例或你希望失败的测试用例,以便Pytest可以相应地处理它们并提供测试会话的摘要,同时保持测试套件为通过状态。 跳过(Skip)指,你希望如果某些条
阅读全文
摘要:[TOC] "返回: Pytest权威教程" Fixture方法及测试用例的参数化 Pytest在多个级别启用测试参数化: 允许一个[参数化Fixture方法。 @pytest.mark.parametrize允许在测试函数或类中定义多组参数和Fixture。 pytest_generate_tes
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 缓存:使用跨执行状态 版本2.8中的新函数。 使用方法 该插件提供了两个命令行选项,用于重新运行上次 调用的失败: ,` last failed` 只重新运行故障。 ,` failed first` 先运行故障然后再运行其余的测试。 对于清理(通常不需要
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 运行Nose用例 基本支持运行Nose框架格式的测试用例。 使用方法 后安装pytest类型: 你应该能够运行你的nose样式测试并利用pytest的函数。 支持的nose风格 在模块/类/方法级别进行设置和拆卸 SkipTest异常和标记 设置/拆卸装
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 经典xUnit风格的setup/teardown 本节介绍了如何在每个模块/类/函数的基础上实现Fixture(setup和teardown测试状态)的经典而流行的方法。 注意 虽然这些setup/teardown方法对于来自a 或nose的人来说简单且
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 安装和使用插件 本节讨论如何安装和使用第三方插件。有关编写自己的插件的信息,请参阅编写插件。 安装第三方插件可以通过以下方式轻松完成 : 如果安装了插件,则 自动查找并集成它,无需激活它。 这是一些常用插件列表: pytest django:为djang
阅读全文
摘要:目录插件编写Pytest启动时的插件发现顺序conftest.py:本地目录插件编写自己的插件使你的插件可以被他人安装断言重写在测试模块或conftest文件中要求/加载插件按名称访问另一个插件注册为通用标记测试插件 返回: Pytest权威教程 插件编写 很容易为你自己的项目实现[本地confte
阅读全文
摘要:返回: Pytest权威教程 编写钩子函数(Hooks) 钩子函数验证和执行 Pytest会调用任意给定规格并注册了的插件的钩子方法。让我们看一下一个函数的典型钩子函数 pytest_collection_modifyitems(session,config,items),Pytest在收集完所有测
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 记录日志 Pytest默认捕获WARNING以上日志消息,在每个失败的测试结果概要中,捕获的log信息和stdout、stderr信息使用相同的方式,分块显示。 不带选项运行: 失败的用例显示格式如下: 默认情况下,捕获到的每条日志消息都会显示模块,行号
阅读全文
摘要:[toc] "返回: Pytest权威教程" 函数(Functions) pytest.approx 断言两个数字(或两组数字)在某个容差范围内彼此相等。 由于浮点运算的复杂性,我们直觉期望相等的数字并不总是如此: 编写测试时通常会遇到此问题,例如,确保浮点值是您期望的值。处理此问题的一种方法是断言
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 标记(Marks) 可以使用标记应用元数据来 测试函数 (但不是Fixture方法),然后可以通过Fixture方法或插件访问。 pytest.mark.filterwarnings 参考: @ pytest.mark.filterwarnings。 为
阅读全文
摘要:返回: Pytest权威教程 Fixtures函数 参考: Pytest Fixtures:显式,模块化,可扩展 测试函数,或其他Fixture函数,通过函数参数,来请求使用Fixture函数。 引用Fixture函数的测试用例,示例如下: def test_output(capsys): prin
阅读全文
摘要:返回: Pytest权威教程 钩子函数(Hooks) 参考: 编写插件 引用可由conftest.py文件实现的所有钩子函数。 初始化时的钩子函数 graph LR A1(添加钩子<br/>pytest_addhooks)-->A2(添加参数<br/>pytest_addoption) A2-->A
阅读全文
摘要:返回: Pytest权威教程 Pytest中的对象 Pytest中的对象的完整使用可参考: Fixturs及Hooks方法 CallInfo对象 class CallInfo: 结果/异常信息是一个函数调用。 Class对象 class Class: 基类:_pytest.python.PyColl
阅读全文
摘要:[toc] "返回: Pytest权威教程" 特殊变量(Special Variables) pytest在测试模块中定义时以特殊方式处理一些全局变量。 collect_ignore 参考: 自定义测试集合 可以在 conftest.py文件中 声明以排除测试目录或模块。需要成为 。 collect
阅读全文
摘要:返回: Pytest权威教程 配置项 这里是一个可以在被写入内置的配置选项的列表pytest.ini,tox.ini或setup.cfg通常位于版本库的根文件。所有选项必须在一个[pytest]部分下([tool:pytest]对于setup.cfg文件)。 注意: 的使用setup.cfg是不推荐
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 优质集成实践 使用pip安装包 对于开发,我们建议你将[venv来安装应用程序和任何依赖项,以及 包本身。这可确保你的代码和依赖项与系统Python安装隔离。 接下来, 使用以下最低内容将文件放在包的根目录中: 包裹的名称在哪里。然后,你可以通过从同一目
阅读全文
摘要:返回: Pytest权威教程 不稳定测试用例处理 “不稳定”测试用例是指,有时候用例通过,有时候失败。用例间歇或偶发性出现故障,并且不清楚原因。本页讨论了pytest的一些帮助处理这些不确定测试用例的功能。这些功能可以帮助你快速确定、修复或缓解这些问题,或提供一些其他的常规策略。 为什么不稳定测试用
阅读全文
摘要:[TOC] "返回: Pytest权威教程" Pytest导入机制和sys.path/PYTHONPATH 包中的测试脚本及conftest.py文件 参考文件目录布局: 执行时: 由于用例所在tests/目录中包含了__init__.py文件,当Pytest找到foo/bar/tests/test
阅读全文
摘要:返回: Pytest权威教程 配置 命令行参数和配置文件设置 你可以使用常规帮助选项-h,来获取有关命令行参数和配置文件选项相关的帮助信息 pytest -h # 显示支持的命令行参数及配置文件选项 结果显示已安装插件、注册的命令和配置文件选项。 初始化:确定项目根目录ROOTDIR和配置文件INI
阅读全文
摘要:[TOC] "返回: Pytest权威教程" 示例和自定义技巧 这是一个(不断增长的)示例列表。如果你需要更多示例或有疑问,请联系我们。另请参阅包含许多示例代码段的 综合文档。此外,stackoverflow.com上的pytest专栏通常会有示例解答。 基本示例参考: "安装及入门" : 基础入门
阅读全文
摘要:[TOC] "返回: Pytest权威教程" Bash自动补全设置 在Linux/Mac bash shell环境下,可以使用 "argcomplete" 对 命令进行自动补全。首先要安装和启用 。 使用以下命令安装argcomplete: 全局激活argcomplete命令补全,对所有支持的Pyt
阅读全文

浙公网安备 33010602011771号