如何在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 <文件名> -v**。
Pytest提供了在测试方法上使用标记的功能。标记用于为测试方法赋予属性。一些默认标记包括skip、xfail和parametrize。此外,根据需要还可以自定义更多标记。
在某些情况下,由于应用程序中已知的bug或某个特定功能仍在开发中,测试方法可能会变得不相关。pytest测试框架提供了跳过测试方法执行的选项。
跳过标记与测试方法相关联,语法如下:**@py.test.mark.skip**。此外,要使用标记,我们必须将**import pytest**导入到我们的测试文件。一旦测试方法变得相关,我们需要从测试方法中删除skip标记。
让我们考虑一个包含测试方法的pytest文件。
import pytest @pytest.mark.loan @pytest.mark.skip def test_CalculateLoan(): print("Loan calculation") def test_CalculateLease(): print("Lease calculation")
让我们考虑另一个包含测试方法的pytest文件。
import pytest @pytest.mark.loan @pytest.mark.skip def test_CalculateRepay(): print("Loan calculation") def test_FindLease(): print("Lease search")
现在要运行所有测试用例,我们需要使用命令**py.test –v**。标记为**skip**的测试方法将被排除在执行之外。在本例中,**CalculateLoan()**和**CalculateRepay()**测试方法将被跳过执行。