如何在 pytest 中对选定的测试用例进行分组?
我们可以对 pytest 中的一组测试用例进行分组并执行。Pytest 是 Python 中的一个测试框架。要安装 pytest,我们需要使用命令pip install pytest。安装后,我们可以使用命令pytest –version验证 Python 是否已安装。pytest 的版本将显示出来。
Pytest 可用于创建和执行测试用例。它可以广泛应用于 API 测试、UI 测试、数据库测试等。pytest 的测试文件有一个命名约定,即以test_ 开头或以 _test 结尾,并且每一行代码都应该在以test 开头的方法名内。此外,每个方法都应该具有唯一的名称。
为了打印控制台日志,我们需要使用命令py.test –v –s。同样,如果我们想从特定的 pytest 文件运行测试,则命令为py.test <filename> -v。
Pytest 提供了在测试方法上使用标记的功能。标记用于为测试方法赋予属性。一些默认标记包括 skip、xfail 和 parametrize。此外,还可以根据需要自定义更多标记。
标记使用以下语法与测试方法关联:@py.test.mark.<markername>。另外,要使用标记,我们必须将pytest导入到我们的测试文件。要执行带标记的测试方法,命令为py.test -m <markername> -v。
这里 -m <markername> 是标记的名称,v 表示详细模式。
让我们考虑一个包含测试方法的 pytest 文件。
import pytest @pytest.mark.loan def test_CalculateLoan(): print("Loan calculation") def test_CalculateLease(): print("Lease calculation")
让我们考虑另一个包含测试方法的 pytest 文件。
import pytest @pytest.mark.loan def test_CalculateRepay(): print("Loan calculation") def test_FindLease(): print("Lease search")
要运行一组具有用户定义标记 loan 的测试方法,命令应为py.test -m loan –v。在我们的示例中,具有标记为loan的测试方法将被选中以执行。在这种情况下,将执行CalculateLoan()和CalculateRepay()。