pytest 命令行
时间: 2023-10-26 22:11:56 浏览: 50
pytest 是一个常用的 Python 测试框架,它可以通过命令行来运行测试用例。
使用 pytest 命令行运行测试用例的一般语法是:
```
pytest [options] [testfile.py::testname]
```
其中,`testfile.py` 是包含测试用例的文件名,`testname` 是具体的测试用例名称。如果不指定 `testfile.py` 和 `testname`,pytest 会自动查找当前目录及其子目录下的所有以 `test_*.py` 或 `*_test.py` 命名的文件,并执行文件中的所有测试用例。
一些常用的 pytest 命令行选项包括:
- `-v`:显示每个测试用例的详细信息。
- `-s`:允许在控制台输出打印语句。
- `-k <expression>`:只运行符合表达式 `<expression>` 的测试用例。
- `-m <marker>`:只运行带有指定标记 `<marker>` 的测试用例。
- `--html=<file>`:将测试结果以 HTML 格式输出到指定文件。
- `--junit-xml=<file>`:将测试结果以 JUnit XML 格式输出到指定文件。
除了上述选项,pytest 还支持许多其他选项和插件,可以根据实际需求进行配置和使用。
相关问题
pytest 命令行参数
pytest 是一个流行的 Python 测试框架,支持很多命令行参数。以下是一些常用的 pytest 命令行参数:
- -v, --verbose: 显示详细的测试结果。
- -s, --capture=no: 禁止捕获标准输出和标准错误。
- -x, --exitfirst: 遇到第一个测试失败就停止执行。
- -k EXPRESSION: 根据表达式匹配测试用例。
- --tb=STYLE: 设置 traceback 格式(long/short/line/native/no)。
- --junitxml=path: 生成 JUnit XML 格式的测试报告。
- --cov=[PATH]: 测试覆盖率分析,可以指定需要分析的路径。
- --flake8: 运行 flake8 代码风格检查。
- --mypy: 运行 mypy 静态类型检查。
还有很多其他的命令行参数,可以通过运行 `pytest --help` 查看完整的列表。
pytest 命令行参数化
pytest支持通过命令行传递参数来进行参数化。首先需要在conftest.py中添加命令行选项,可以使用pytest_addoption函数来实现。在该函数中,可以通过parser.addoption方法添加参数选项,比如"--cmdopt"。然后,可以在用例中使用fixture来调用cmdopt函数,从命令行传入的参数可以通过该函数获取到。例如:@pytest.fixture(scope='class') def cmdopt(request): return request.config.getoption("--cmdopt")。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [Pytest 命令行传参代码示例](https://blog.csdn.net/liuchaoqi06/article/details/121142117)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [pytest中命令行传参,以及三种参数化方式](https://blog.csdn.net/weixin_40274647/article/details/120976782)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]