文章目录

  • 第二部分:操作指南
  • 2.8 如何运行文档测试
  • 2.8.1编码
  • 2.8.2使用“文档测试”选项
  • 2.8.3在失败时继续
  • 2.8.4输出格式
  • 2.8.5pytest特定特性
  • 2.8.6替代方案
  • 2.9 如何重新运行失败的测试,并在测试运行之间维护状态
  • 2.9.1使用情况
  • 2.9.2首先只重新启动失败或失败
  • 2.9.3在上次运行中没有任何测试失败时的行为
  • 2.9.4新的配置。缓存对象
  • 2.9.5检查缓存内容
  • 2.9.6清除缓存内容
  • 2.9.7逐步
  • 2.10如何管理日志记录
  • 2.10.1单倍体夹具
  • 2.10.2Live日志
  • 2.10.3自定义颜色
  • 2.10.4发行说明
  • 2.10.5在测试3.4中不兼容的变化
  • 2.11如何捕获st输出/stderr输出
  • 2.11.1默认标准输出/标准/捕获行为
  • 2.11.2设置捕获方法或禁用捕获
  • 2.11.3使用打印语句进行调试
  • 2.11.4访问从测试函数捕获的输出
  • 2.12如何捕获警告
  • 2.12.1控制警告
  • 2.12.2 @pytest.mark.filterwarnings
  • 2.12.3禁用警告摘要
  • 2.12.4完全禁用警告捕获
  • 2.12.5报废警告和挂起废弃警告
  • 2.12.6确保代码触发弃用警告
  • 2.12.7使用警告功能断言警告
  • 2.12.8记录警告
  • 2.12.9测试中的警告的附加用例
  • 2.12.10自定义故障消息
  • 2.12.11内部最严重警告
  • 2.12.12资源警告
  • 2.13如何使用skip和xfail来处理不能成功的测试【+】
  • 2.13.1跳过测试功能
  • 2.13.2XFail:将测试功能标记为预期的失败
  • 2.13.3 使用参数化跳过/退出
  • 2.14如何安装和使用插件【+】
  • 2.14.1在测试模块或合并测试文件中需要/加载插件
  • 2.14.2查找哪些插件是活动的
  • 2.14.3按名称停用/注销一个插件
  • 2.15写插件【+】
  • 2.15.1工具启动时的插件发现顺序
  • 2.15.2conftest.py:本地的每个目录的插件
  • 2.15.3编写你自己的插件
  • 2.15.4使您的插件可由其他人安装
  • 2.15.5断言重写
  • 2.15.6在测试模块或合并测试文件中需要/加载插件
  • 2.15.7正在按名称访问另一个插件
  • 2.15.8正在注册自定义标记
  • 2.15.9测试插件
  • 2.16写勾子函数【+】
  • 2.16.1钩子功能的验证和执行
  • 2.16.2首先停止:首先停止非无结果
  • 2.16.3钩子包装器:围绕其他钩子执行
  • 2.16.4Hook函数排序/调用示例
  • 2.16.5声明新钩子
  • 2.16.6在pytest_addoption中使用钩子
  • 2.16.7可选择地使用来自第三方插件的钩子
  • 2.16.8跨钩子函数存储项上的数据
  • 2.17如何对现有的测试套件使用pytest【+】
  • 2.17.1运行最测试的现有测试套件
  • 2.18如何使用基于单位测试的测试
  • 2.18.1的好处是开箱即用的
  • 2.18.2最严重的特征。测试用例子类
  • 2.18.3将最测试装置混合成单元测试。使用标记的TestCase子类
  • 2.18.4使用自动驾驶舱的固定装置和访问其他固定装置
  • 2.19如何运行为鼻子编写的测试
  • 2.20如何实现单元式式setup[+]
  • 2.20.1模块级别的设置/拆卸
  • 2.20.2类级别的设置/拆卸
  • 2.20.3方法和功能级别的设置/拆卸
  • 2.21如何设置bash完成
  • 第三部分:参考指南
  • 3.1 固定装置参考【+】
  • 3.1.1内置固定装置
  • 3.1.2固定装置可用性
  • 3.1.3固定装置实例化顺序
  • 3.2插件列表【+】
  • 3.3 配置【+】
  • 3.3.1命令行选项和配置文件设置
  • 3.3.2配置文件格式
  • 3.3.3初始化:确定根目录和配置文件
  • 3.3.4内置程序配置文件选项
  • 3.3.5语法高亮显示主题定制
  • 3.4API参考【+】,100页
  • 第四部分:一些解释和说明
  • 4.1 分析下固定装置【+】
  • 4.2.1什么是固定装置
  • 4.2.2对 xUnit-style setup/teardown 功能的改进
  • 4.2.3修复错误
  • 4.2.4共享测试数据
  • 4.2.5关于设备清理的说明
  • 4.3良好的集成实践
  • 4.3.1使用pip安装包
  • 4.3.2关于Python测试发现的约定
  • 4.3.3选择测试布局/导入规则
  • 4.3.4 tox
  • 4.3.5不通过设置工具运行
  • 4.4Flaky测试
  • 4.4.1为什么劣质测试是个问题
  • 4.4.2潜在根本原因
  • 4.4.3最快特性
  • 4.4.4其他一般策略
  • 4.4.5研究
  • 4.4.6资源
  • 4.5最小的导入机制和sys.path/PYTHONPATH
  • 4.5.1导入模式
  • 4.5.2前置和附加导入模式方案
  • 4.5.3调用蟒蛇测试和蟒蛇m测试
  • 5.1示例和定制技巧【+】
  • 5.1.1 演示带有pyt的Python故障报告
  • 5.1.2基本模式和示例
  • 5.1.3 Parametrizing tests
  • 5.1.4使用自定义标记
  • 5.1.5一个可以查看所有收集到的测试的会话固定装置
  • 5.1.6更改标准(Python)测试发现
  • 5.1.7使用非蟒测试
  • 5.2反向兼容性策略
  • 5.3历史
  • 5.3.1主要关注平滑过渡姿态(6.0版前)
  • 5.4弃用和移除
  • 5.4.1不建议使用的功能
  • 5.4.2删除功能
  • 5.5 Python2.7和3.4的支持
  • 5.6以后大多跟开发者相关,测试人员暂可不深入


第二部分:操作指南

2.8 如何运行文档测试

因为涉及txt的运行,暂时没找到测试人员需要深入的,所以暂不投入

# content of test_example.txt
hello this is a doctest
>>> x = 3
>>> x
3
pytest test_example.txt

2.8.1编码

2.8.2使用“文档测试”选项

2.8.3在失败时继续

2.8.4输出格式

2.8.5pytest特定特性

2.8.6替代方案

2.9 如何重新运行失败的测试,并在测试运行之间维护状态

2.9.1使用情况

2.9.2首先只重新启动失败或失败

2.9.3在上次运行中没有任何测试失败时的行为

2.9.4新的配置。缓存对象

2.9.5检查缓存内容

2.9.6清除缓存内容

2.9.7逐步

2.10如何管理日志记录

2.10.1单倍体夹具

2.10.2Live日志

2.10.3自定义颜色

2.10.4发行说明

2.10.5在测试3.4中不兼容的变化

2.11如何捕获st输出/stderr输出

2.11.1默认标准输出/标准/捕获行为

2.11.2设置捕获方法或禁用捕获

2.11.3使用打印语句进行调试

2.11.4访问从测试函数捕获的输出

2.12如何捕获警告

2.12.1控制警告

2.12.2 @pytest.mark.filterwarnings

2.12.3禁用警告摘要

2.12.4完全禁用警告捕获

2.12.5报废警告和挂起废弃警告

2.12.6确保代码触发弃用警告

2.12.7使用警告功能断言警告

2.12.8记录警告

2.12.9测试中的警告的附加用例

2.12.10自定义故障消息

2.12.11内部最严重警告

2.12.12资源警告

2.13如何使用skip和xfail来处理不能成功的测试【+】

2.13.1跳过测试功能

2.13.2XFail:将测试功能标记为预期的失败

2.13.3 使用参数化跳过/退出

2.14如何安装和使用插件【+】

2.14.1在测试模块或合并测试文件中需要/加载插件

2.14.2查找哪些插件是活动的

2.14.3按名称停用/注销一个插件

2.15写插件【+】

2.15.1工具启动时的插件发现顺序

2.15.2conftest.py:本地的每个目录的插件

2.15.3编写你自己的插件

2.15.4使您的插件可由其他人安装

2.15.5断言重写

2.15.6在测试模块或合并测试文件中需要/加载插件

2.15.7正在按名称访问另一个插件

2.15.8正在注册自定义标记

2.15.9测试插件

2.16写勾子函数【+】

2.16.1钩子功能的验证和执行

2.16.2首先停止:首先停止非无结果

2.16.3钩子包装器:围绕其他钩子执行

2.16.4Hook函数排序/调用示例

2.16.5声明新钩子

2.16.6在pytest_addoption中使用钩子

2.16.7可选择地使用来自第三方插件的钩子

2.16.8跨钩子函数存储项上的数据

2.17如何对现有的测试套件使用pytest【+】

2.17.1运行最测试的现有测试套件

2.18如何使用基于单位测试的测试

2.18.1的好处是开箱即用的

2.18.2最严重的特征。测试用例子类

2.18.3将最测试装置混合成单元测试。使用标记的TestCase子类

2.18.4使用自动驾驶舱的固定装置和访问其他固定装置

2.19如何运行为鼻子编写的测试

2.20如何实现单元式式setup[+]

2.20.1模块级别的设置/拆卸

2.20.2类级别的设置/拆卸

2.20.3方法和功能级别的设置/拆卸

2.21如何设置bash完成

第三部分:参考指南

3.1 固定装置参考【+】

3.1.1内置固定装置

3.1.2固定装置可用性

3.1.3固定装置实例化顺序

3.2插件列表【+】

这个列表包含1018个插件。

3.3 配置【+】

3.3.1命令行选项和配置文件设置

3.3.2配置文件格式

3.3.3初始化:确定根目录和配置文件

3.3.4内置程序配置文件选项

3.3.5语法高亮显示主题定制

3.4API参考【+】,100页

第四部分:一些解释和说明

4.1 分析下固定装置【+】

4.2.1什么是固定装置

4.2.2对 xUnit-style setup/teardown 功能的改进

4.2.3修复错误

4.2.4共享测试数据

4.2.5关于设备清理的说明

4.3良好的集成实践

4.3.1使用pip安装包

4.3.2关于Python测试发现的约定

4.3.3选择测试布局/导入规则

4.3.4 tox

4.3.5不通过设置工具运行

4.4Flaky测试

4.4.1为什么劣质测试是个问题

4.4.2潜在根本原因

4.4.3最快特性

4.4.4其他一般策略

4.4.5研究

4.4.6资源

4.5最小的导入机制和sys.path/PYTHONPATH

4.5.1导入模式

4.5.2前置和附加导入模式方案

4.5.3调用蟒蛇测试和蟒蛇m测试

5.1示例和定制技巧【+】

5.1.1 演示带有pyt的Python故障报告

5.1.2基本模式和示例

5.1.3 Parametrizing tests

5.1.4使用自定义标记

5.1.5一个可以查看所有收集到的测试的会话固定装置

5.1.6更改标准(Python)测试发现

5.1.7使用非蟒测试

5.2反向兼容性策略

5.3历史

5.3.1主要关注平滑过渡姿态(6.0版前)

5.4弃用和移除

5.4.1不建议使用的功能

5.4.2删除功能

5.5 Python2.7和3.4的支持

5.6以后大多跟开发者相关,测试人员暂可不深入