news 2026/6/9 23:43:23

Pytest——》pytest+allure

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Pytest——》pytest+allure

1、层级结构

用例层:case——》test_login.py

# 方法一:通过函数实现 import pytest def testlogin(): print('通过函数实现用例') def testlogin1(): print("通过函数写用例:testlogin1") def testlogin2(): print("通过函数写用例:testlogin2") #模块执行前 def setup_module(): print('\n模块执行前,执行这个函数:setup_module()') #模块执行后 def teardown_module(): print('\n模块执行后,执行这个函数:teardown_module()') #函数执行前,对类里面的函数无效 def setup_function(): print('\n函数执行前,执行这个函数:setup_function()') #函数执行后,对类里面的函数无效 def teardown_function(): print('\n函数执行后,执行这个函数:teardown_function()') # 方法二:通过类实现 class TestLogin(object): @classmethod def testlogin3(cls): print('用类方法写用例') # @staticmethod def testlogin4(self): print('用实例方法写用例') def testlogin5(self): print('用实例方法写用例') # 类里面所有用例执行前执行一次 def setup_class(self): print('\n类里面用例执行前执行一次这个函数:setup_class()') # 类里面所有用例执行后执行一次 def teardown_class(self): print('\n类里面用例执行后执行一次这个函数:teardown_class()') #类中每个用例前执行 def setup_method(self): print("\n执行用例前,执行本函数:setup_method()") #类中每个用例后执行 def teardown_method(self): print("\n执行用例后,执行本函数teardown_method()")

执行层:runner

1、安装对应版本的allure报告,配置环境变量

2、Pycharm控制台执行pip install allure-pytest

import pytest import subprocess allure_result = "./report/allure_result" #指定数据存储目录 allure_html = "./report/allure_html"#存放html报告 pytest.main(['case','-v','-s',f'--alluredir={allure_result}','--clean-alluredir']) subprocess.run(f'allure generate {allure_result} -o {allure_html} --clean',shell=True,universal_newlines=True) #生成报告

运行结果:

D:\Study\pythonProject\venv\Scripts\python.exe D:/Study/pythonProject/Pythonpytest/runner.py ============================= test session starts ============================= platform win32 -- Python 3.7.9, pytest-7.4.4, pluggy-1.2.0 -- D:\Study\pythonProject\venv\Scripts\python.exe cachedir: .pytest_cache rootdir: D:\Study\pythonProject\Pythonpytest plugins: allure-pytest-2.15.2, rerunfailures-13.0, xdist-3.5.0 collecting ... collected 6 items case/test_login.py::testlogin 模块执行前,执行这个函数:setup_module() 函数执行前,执行这个函数:setup_function() 通过函数实现用例 PASSED 函数执行后,执行这个函数:teardown_function() case/test_login.py::testlogin1 函数执行前,执行这个函数:setup_function() 通过函数写用例:testlogin1 PASSED 函数执行后,执行这个函数:teardown_function() case/test_login.py::testlogin2 函数执行前,执行这个函数:setup_function() 通过函数写用例:testlogin2 PASSED 函数执行后,执行这个函数:teardown_function() case/test_login.py::TestLogin::testlogin3 类里面用例执行前执行一次这个函数:setup_class() 执行用例前,执行本函数:setup_method() 用类方法写用例 PASSED 执行用例后,执行本函数teardown_method() case/test_login.py::TestLogin::testlogin4 执行用例前,执行本函数:setup_method() 用实例方法写用例 PASSED 执行用例后,执行本函数teardown_method() case/test_login.py::TestLogin::testlogin5 执行用例前,执行本函数:setup_method() 用实例方法写用例 PASSED 执行用例后,执行本函数teardown_method() 类里面用例执行后执行一次这个函数:teardown_class() 模块执行后,执行这个函数:teardown_module() ============================== 6 passed in 0.03s ============================== Report successfully generated to .\report\allure_html Process finished with exit code 0

报告存放数据(自动生成):

allure查看报告

1、选择(allure_html)——》点击(index.html),选择右上角对应的浏览器打开查看

常见问题:

1、要考虑allure版本的兼容性,当前版本用的是:2.36.0。如果版本不兼容,可能会存在allure_result有数据,但是打开报告后,测试数据为:0的情况。

解决方案:重新下载、安装适配的allure,重启pycharm就可以解决,如果还是解决不了,直接重启电脑。(前提:allure_result结果数据可以正常生成)

2、runner执行后,如果控制台显示allure红色方框?乱码。原因是在配置allure环境变量的时候,pycharm是打开状态,allure未生效。

解决方案:重启pycharm就可以解决,如果还是解决不了,直接重启电脑。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/7 23:28:01

从追赶到领跑:国产数据库的技术突破与生态重构(2025 深度技术剖析)

【本文目录】 引言:数据要素时代下国产数据库的战略价值 核心技术架构深度解析 2.1 云原生分布式架构的底层实现逻辑 2.2 多模数据统一存储的抽象层设计 2.3 低时延 I/O 优化的硬件协同技术 2.4 国密级安全防护体系的算法模型 主流产品技术特性与性能对标 3…

作者头像 李华
网站建设 2026/6/8 20:18:36

RD-Agent终极指南:3步实现AI驱动的自动化数据科学研发

RD-Agent终极指南:3步实现AI驱动的自动化数据科学研发 【免费下载链接】RD-Agent Research and development (R&D) is crucial for the enhancement of industrial productivity, especially in the AI era, where the core aspects of R&D are mainly focu…

作者头像 李华
网站建设 2026/6/9 17:42:33

鸿蒙Electron应用工程化与性能优化实战:从开发到上线全链路

随着鸿蒙 OS 生态的持续完善,前端开发者如何低门槛切入鸿蒙生态成为热门话题。Electron 作为成熟的跨端桌面应用框架,可借助鸿蒙 OS 的 Linux 兼容层实现无缝运行,无需学习 ArkTS 即可快速开发鸿蒙桌面应用。 本文将从环境搭建、核心功能开发…

作者头像 李华
网站建设 2026/6/9 18:45:56

文档备份软件哪款最好用?2025超好用的六款文档备份软件推荐

电脑文件备份已经成为企业与个人用户不可或缺的数据保护措施。面对硬盘故障、病毒攻击、人为误操作等种种风险,选择一款可靠高效的备份软件显得尤为重要。本文将为您盘点市面上几款备受推崇的电脑文件备份软件,帮助您为珍贵数据挑选最合适的安全卫士。一…

作者头像 李华
网站建设 2026/6/9 18:53:00

解决 keil 中flash download failed的问题

问题就是编译通过之后烧录显示这个问题,问题就是flash下载失败我的问题就是在debug/setting中没有加载适配算法,如下图点击添加相应的算法即可但是这里面有时没有需要的算法,我们打开C:\Keil_v5\ARM\PACK\GigaDevice\GD32F4xx_DFP\3.4.0\Flas…

作者头像 李华
网站建设 2026/6/9 18:51:47

DeepSeek-VL2终极部署指南:从零构建企业级多模态AI系统

DeepSeek-VL2终极部署指南:从零构建企业级多模态AI系统 【免费下载链接】deepseek-vl2 探索视觉与语言融合新境界的DeepSeek-VL2,以其先进的Mixture-of-Experts架构,实现图像理解与文本生成的飞跃,适用于视觉问答、文档解析等多场…

作者头像 李华