Pytest Allure 添加环境信息实例讲解
描述
Pytest Allure 是一个用于美化测试报告的 Python 模块,可以将测试结果输出为漂亮的 HTML 报表,提供多种可视化的测试数据报告和图表。其中添加环境信息可以让我们在测试过程中了解测试环境的情况,例如python版本,浏览器版本,操作系统等等。
本文将主要介绍如何在 Pytest 中使用 Allure 插件添加环境信息,以便更好地帮助我们分析测试结果。
环境信息
我们在每一次测试的时候都需要提供我们当前测试的环境信息,例如:Python 版本、浏览器类型及版本、操作系统类型、测试服地址等,以保证测试结果的可靠性和可重现性。为了能够使用 Allure 插件添加环境信息,我们需要做以下两个步骤。
第一步:使用 allure.environment 函数添加环境信息
allure.environment 函数定义了添加环境信息的具体过程。我们需要使用该函数将环境信息添加到测试数据中。代码示例如下:
import allure
@allure.environment(OPERATING_SYSTEM="Windows", BROWSER="Chrome", PYTHON_VERSION="3.7.6")
def test_example():
assert True
在上面的示例代码中,我们使用了 allure.environment 函数,并提供了一些测试环境的信息,包括操作系统、浏览器和 Python 版本。这时候,pytest-allure 插件就会自动读取这些环境信息,并将它们添加到测试报告的环境信息部分中。
第二步:在 pytest.ini 中配置 Allure 环境信息
为了能够将 allure.environment 函数定义的环境信息添加到测试报告中,我们需要在 pytest.ini 文件中配置 Allure 环境信息。做法如下:
[pytest]
addopts = -vs --alluredir=./result
allure_environment = OPERATING_SYSTEM,BROWSER,PYTHON_VERSION
在上面的示例中,我们在 pytest.ini 中定义了一个 alluredir,用于输出生成的测试报告文件。同时,我们通过 allure_environment 参数指定了需要在测试报告中展示的环境信息,也就是上一步中使用 allure.environment 函数定义的信息。
如此,我们就成功的添加了测试用例的环境信息,以便更好地分析测试结果。
示例说明
示例1
import allure
import pytest
import sys
@pytest.mark.parametrize("test_input,expected", [("3+5", 8), ("2+4", 6), ("6*9", 42)])
@allure.environment(OPERATING_SYSTEM="Windows", BROWSER="Chrome", PYTHON_VERSION=sys.version)
def test_eval(test_input, expected):
assert eval(test_input) == expected
在上面的示例中,我们使用了 pytest 的参数化机制,多次运行同一个测试用例,并测试不同的输入输出。在这个测试用例中,我们添加了三个测试参数,分别是 test_input 和 expected。
同时我们还定义了一个 allure.environment 函数,提供了我们的测试环境的信息,包括操作系统 Windows,浏览器 Chrome 和 Python 版本。
示例2
import allure
import pytest
@allure.environment(OPERATING_SYSTEM="OSX", BROWSER="Chrome", PYTHON_VERSION="3.7.6")
def test_example():
assert True
在上面的示例中,我们定义了一个简单的测试用例 test_example,使用了 allure.environment 函数来添加测试环境的一些基本信息。这个测试用例总是返回 True,但在 Allure 测试报告中,我们将能够看到我们添加的测试环境信息,包括操作系统、浏览器和 Python 版本。
总结
通过本文的 Pytest Allure 添加环境信息实例讲解,我们学习了如何在 Pytest 使用 Allure 插件添加环境信息,以便更好地分析测试结果。同时我们提供了两个示例,作为具体操作的参考。希望这些内容对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:pytest allure添加环境信息实例讲解 - Python技术站