测试工具面试题, 软件测试中,pytest 运行测试用例的命令规则有哪些?
测试工具面试题, 软件测试中,pytest 运行测试用例的命令规则有哪些?
QA
Step 1
Q:: pytest 运行测试用例的基本命令是什么?
A:: 在 pytest 中,运行测试用例的基本命令是 pytest
。该命令会自动搜索并运行项目中的所有测试文件,这些文件通常以 test_
开头或 _test
结尾。
Step 2
Q:: 如何运行特定的测试文件或测试用例?
A:: 要运行特定的测试文件,可以使用命令 pytest <文件路径>
。例如,运行 test_example.py
文件中的测试用例,可以使用 pytest test_example.py
。要运行特定的测试用例,可以在文件路径后加上 ::<测试用例名>
,例如 pytest test_example.py::test_specific_case
。
Step 3
Q:: 如何通过标记运行测试用例?
A:: pytest 支持使用标记来组织和运行特定的测试用例。可以使用 @pytest.mark.<标记名>
来标记测试函数,然后使用 pytest -m <标记名>
来运行带有特定标记的测试用例。
Step 4
Q:: 如何查看测试用例的详细执行结果?
A:: pytest 提供了多种选项来查看测试结果的详细信息。例如,使用 -v
参数(pytest -v
)可以查看每个测试用例的详细执行结果。使用 --tb=short
可以简化失败测试用例的回溯信息,--tb=long
则可以查看更详细的回溯信息。
Step 5
Q:: 如何生成测试报告?
A:: pytest 支持生成 HTML 格式的测试报告,使用 pytest --html=report.html
命令可以生成一份包含测试结果的 HTML 报告。这在团队共享和测试结果回溯时非常有用。
Step 6
Q:: 如何并行运行测试用例?
A:: 可以使用 pytest-
xdist 插件来并行运行测试用例。命令 pytest -n <num>
可以启动多个进程并行执行测试用例,其中 <num>
为并行执行的进程数。例如,pytest -n 4
表示用 4
个进程并行运行测试。
Step 7
Q:: 如何跳过或预期失败的测试用例?
A:: pytest 提供了 @pytest.mark.skip
装饰器来跳过特定的测试用例,@pytest.mark.xfail
用于标记预期会失败的测试。skip
用于暂时跳过不需要执行的测试,xfail
则用于标记已知问题的测试,便于开发者在问题修复后重新验证。