pytest配置文件配置并通过allure生成报告

之前已经学习了使用pytest+requests实现各种方式的调用和一些脚本的执行,今天来学习下如何使用pytest.ini配置文件来管理用例的执行以及如何使用allure生成测试报告。

1.pytest.ini文件配置

在项目目录下新建pytest.ini文件,然后进行配置,pytest.ini的文件配置信息如下所示。

**[pytest]:**表示这是一个pytest配置文件的开始;

**; -n 3 --dist=loadfile:**表示注释不启用,原配置信息为会启用pytest-xdist插件,使用3个进程,并且按照文件分布测试;

addopts = -sv:addopts 指定了传递给 pytest 的额外命令行选项;

-s 选项表示在终端显示测试运行时的标准输出和标准错误输出;

-v 选项表示启用详细模式,显示每个测试的运行结果;

**testpaths = test*:**指定了 pytest 应该在哪些目录或文件中寻找测试文件。这里 test* 表示在所有以 test 开头的文件或目录中寻找测试文件。

**python_files = run.py:**指定文件启动入口为run.py文件,也可以不维护,run.py文件执行的时候会默认寻找pytest.ini中的配置信息;

**python_classes = Test*:**指定 pytest 应该识别哪些类作为测试类。这里指定类名以 Test 开头的类将被识别为测试类;

**python_functions = test_*:**指定 pytest 应该识别哪些函数作为测试函数。这里指定函数名以 test_ 开头的函数将被识别为测试函数;

2.allure的安装

通过链接下载:https://pan.baidu.com/s/1c_5CpKtmGq9Wl3uqMkX4rg,提取码:yzgm。然后解压,将文件路径(一直到bin目录)配置到环境变量中,如下图所示。

在环境变量中配置好allure的路径之后,可以在cmd控制台中输入:allure --version,如果能够正常输出版本信息,则表示allure安装成功,安装成功后如果需要在pycharm中使用,在pycharm已打开的情况下还需要重启pycharm重新打开项目。

3.执行和生成报告

3.1.执行收集数据

在pytest.ini配置文件中修改配置,表示指定通过allure收集执行信息并且将信息存放在report/data目录下,每次执行的时候都会清除之前的数据信息。

addopts = -sv --alluredir report/data --clean-alluredir

执行run.py文件系统报错如下所示。原因:未安装:allure-pytest

ERROR: usage: run.py [options] [file_or_dir] [file_or_dir] [...]

run.py: error: unrecognized arguments: --alluredir

**解决方法:**执行命令安装allure-pytest

pip install allure-pytest

allure-pytest安装成功后,再次执行run.py文件,各个脚本可以正常被收集然后执行,执行成功后会在report/data目录下生成测试结果数据,每一条case都会生成1条记录,如下图所示。

3.2.生成报告

在测试数据收集好了之后,我们通过可以allure来生成报告,命令如下,指定了数据的来源和生成报告的路径并且每次执行命令都要通过clean清除之前的报告数据。

allure generate report/data -o report/html --clean

打开生成的html文件可以看到生成的报告,如果显示的是英文可以在右下角将英文调整为中文,如下图所示。

相关推荐
_可乐无糖21 小时前
pytest日志总结
pytest
菜鸟小贤贤1 天前
mac安装Pytest、Allure、brew
python·macos·自动化·pytest
qq_433716954 天前
Selenium+Pytest自动化测试框架 ------ 禅道实战
自动化测试·软件测试·selenium·单元测试·pytest·接口测试·压力测试
blues_C5 天前
Pytest-Bdd-Playwright 系列教程(11):场景快捷方式
自动化测试·pytest·bdd·playwright
幸运的星竹5 天前
pytest结合allure做接口自动化
自动化·pytest
blues_C5 天前
Pytest-Bdd-Playwright 系列教程(12):步骤参数 & parsers参数解析
自动化测试·pytest·bdd·playwright
胜天半月子7 天前
pytest | 框架的简单使用
运维·pytest
blues_C7 天前
Pytest-Bdd-Playwright 系列教程(10):配置功能文件路径 & 优化场景定义
自动化测试·软件测试·pytest·bdd·playwright
bigbig猩猩8 天前
pytest中的断言:深入解析与实践
pytest
CSXB999 天前
三十八、Python(pytest框架-上)
python·功能测试·测试工具·单元测试·pytest