Fixture | 功能描述 | 测试用例 |
---|---|---|
config.cache | 可以跨 测试用例、跨运行会话(Session) 存储和访问自定义的缓存数据. 缓存数据会被持久化存储在 .pytest_cache 目录中, 因此可以跨用例访问. |
test_config_cache.py |
capsys | capsys.readouterr() 会将常规的标准输出、标准错误(print )进行拦截 |
test_fixture_capsys.py |
request | request.config.inicfg: 存储pytest.ini 键值信息.request.config.invocation_params: 存储命令行参数信息. request.config.option: 存储全量的配置信息,这些信息可以配置在 pytest.ini .request.config.rootpath: 存储项目根路径. request.config.cache: 存储的是 config.cache 对象.request.config.pluginmanager: 存储 pytest 的全局pluginmanager 对象.request.config._inicache: 存储关键的运行配置. |
pytest.ini test_fixture_request.py |
caplog | 拦截logging日志 并写入到caplog 对象 |
test_fixture_caplog.py |
monkeypatch | 通过运行时 动态的修改对象(属性、方法)或数据(字段、值)来完成不同场景的测试目标 |
test_fixture_monkey_patch.py |
pytester | 适用于自研插件的测试场景: 在pytester之前, 测试插件的话需要用目录来隔离独立的testcase. 在pytester之后, 可以将testcase写在一个测试函数中, 可以做到统一执行. |
官网教程 test_assertion.py |
tmp_path | 为测试用例创建一个独立的(隔离的)临时文件夹. 测试用例产生的临时文件都可以放在这里. |
test_fixture_tmp_path.py |