如何在不报告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提供了测试方法上标记的功能。标记用于为测试方法赋予属性或属性。一些默认标记是跳过,xfail和参数设置。此外,根据我们的需求,可以有更多的定制标记。

在某些情况下,测试方法可能由于应用程序中的已知错误而失败,或者特定功能仍在开发中。但是由于该测试方法有一些先决条件,因此不能将其排除在运行之外。pytest测试框架提供了运行测试方法的选项,而无需借助xfail标记报告通过或失败。

xfail标记通过以下语法与测试方法关联:@ py.test.mark.xfail。同样要使用标记,我们必须将pytest导入我们的测试文件。

让我们考虑一个具有测试方法的pytest文件。

import pytest
@pytest.mark.loan
@pytest.mark.xfail
def test_CalculateLoan():
   print("Loan calculation")
def test_CalculateLease():
   print("Lease calculation")

让我们考虑另一个具有测试方法的pytest文件。

import pytest
@pytest.mark.loan
@pytest.mark.xfail
def test_CalculateRepay():
   print("Loan calculation")
def test_FindLease():
   print("Lease search")

现在要运行所有测试用例,我们需要使用命令py.test –v。具有标记为xfail的测试方法应包括在执行中。在这种情况下,CalculateLoan()CalculateRepay()将包含在运行中,但是在执行之后,将不报告通过/失败结果。

猜你喜欢