当前位置: 首页 > news >正文

pytest--allure报告中增加用例详情

🍅点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快

前面介绍了如何生成allure的报告,看着allure的页面非常好看,但是感觉少了一些内容,allure还可以增加一些用例详情内容,这样让我们的报告看着更加绚丽。

allure增加用例详情

我们可以在报告测试套件中增加用例详情内容。

用例标题

1、需要导入allure模块

2、在每条用例函数前需要加上 @allure.title('标题内容')

3、正常执行生成allure报告。

import allure class TestCase: @allure.title('用例1的名称') def test_01(self): print('---用例01---') assert 1 @allure.title('用例2的名称') def test_02(self): print('---用例02---') assert 1 @allure.title('用例3的名称') def test_03(self): print('---用例03---') assert 2

通过在cmd中输入 pytest --alluredir ./report/result 执行测试用例,在执行 allure serve report/result 打开allure报告。这样就能在报告中看出生成了三条用例,并将对应的用例名称显示出来了。

用例描述

用例除了用例标题显示出用例内容外,我们也可以通过用例描述更加详细的在allure中展示出来

这里和unittest的时候显示标题一样,直接通过python的语法在用例中增加注释

import allure class TestCase: @allure.title('用例1的名称') def test_01(self): '''用例_01的描述内容''' print('---用例01---') assert 1 @allure.title('用例2的名称') def test_02(self): '''用例_02的描述内容''' print('---用例02---') assert 1 @allure.title('用例3的名称') def test_03(self): '''用例_03的描述内容''' print('---用例03---') assert 2

同样通过cmd命令行中输入对应的打开allure的报告内容。可以进入到用例详情页面中查看到,描述已经成功添加了。

用例操作步骤

allure中也可以添加将用例的操作步骤进行添加进去,这里通过 allure.step() 的方法来实现添加操作步骤

import allure class TestCase: @allure.title('登录用户') def test_01(self): '''登录用户''' print('---用例01---') with allure.step('输入登录用户名'): print('输入用户名') with allure.step('输入登录的密码'): print('输入密码') with allure.step('点击登录'): print('点击登录!') assert 1 @allure.title('进入测试页面') def test_02(self): '''进入测试页面''' print('---用例02---') with allure.step('进入测试页面'): print('进入测试页面') with allure.step('点击测试内容'): print('点击测试内容') assert 1

和上面的操作一样,打开cmd进行生成allure命令。通过在allure中进行查看报告内容。可以看到已经在测试步骤中添加上了。

定义测试用例相关链接

自动化测试用例都是通过功能用例转换过来的,我们也可以通过allure将我们的测试用例相关的链接到我们的自动化测试用例中,并通过allure展示出来,这里可以通过 @allure.issue() 进行添加bug缺陷内容, @allure.testcase() 添加测试用例链接

import allure class TestCase: @allure.issue('https://home.cnblogs.com/u/qican/') @allure.testcase('https://www.baidu.com/') @allure.title('登录用户') def test_01(self): '''登录用户''' print('---用例01---') with allure.step('输入登录用户名'): print('输入用户名') with allure.step('输入登录的密码'): print('输入密码') with allure.step('点击登录'): print('点击登录!') assert 1 @allure.issue('https://home.cnblogs.com/u/qican/') @allure.testcase('https://www.baidu.com/') @allure.title('进入测试页面') def test_02(self): '''进入测试页面''' print('---用例02---') with allure.step('进入测试页面'): print('进入测试页面') with allure.step('点击测试内容'): print('点击测试内容') assert 1

继续通过allure的报告执行方式,生成allure报告和打开allure报告,就可以看到我们的测试用例相关链接已经添加好了。

用例标签模块

功能测试中可以对测试用例根据不同的模块进行划分,自动化中也可以对用例进行不同模块的划分,然后通过allure的形式进行展示出来,这里我们可以通过 @allure.feature() 对其用例进行增加不同模块。也可以通过 @allure.epic 设置用例整体标签以及模块内容

import allure @allure.epic("属于登录标签") @allure.feature('登录模块') class TestCase: @allure.title('登录用户') def test_01(self): '''登录用户''' print('---用例01---') with allure.step('输入登录用户名'): print('输入用户名') with allure.step('输入登录的密码'): print('输入密码') with allure.step('点击登录'): print('点击登录!') assert 1 @allure.title('进入测试页面') def test_02(self): '''进入测试页面''' print('---用例02---') with allure.step('进入测试页面'): print('进入测试页面') with allure.step('点击测试内容'): print('点击测试内容') assert 1 @allure.epic("属于退出登录标签") @allure.feature('退出登录模块') class Test01: def test_01(self): print('---用例03---') def test_02(self): print('---用例04---')

同样通过cmd进行生成allure报告,然后通过查看allure报告内容,通过下图已经可以很清楚的看出来在增加了用例标签和用例模块

总结

通过上面简单的总结,allure还是很强大的,可以将我们的报告设计的更加好看,对应测试用例模块的划分也很好的展示出来,最最最主要的是领导能看懂了。好了,感谢您的阅读,希望对您有所帮助!

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

http://www.jsqmd.com/news/646954/

相关文章:

  • 为什么企业更需要“Agent Scheduler”而不是大模型
  • 自动化框架对比:Selenium vs Playwright - 专业深度解析
  • MySQL如何限制触发器递归调用的深度_防止触发器死循环方法
  • 企业安防智能化升级实战:从传统监控到AI预警的完整配置指南
  • 联想平板实用技巧|已连 WiFi 一键分享,不用密码也能快速联网
  • Vue3 + AntV G6 实战:手把手教你绘制可折叠的财务科目生态图
  • 快速充电怎么回事?从原理到现实,一篇讲透
  • WinUtil:告别繁琐操作,5分钟搞定Windows系统管理与优化
  • 航班调度优化:飞机排班与机组分配的算法
  • 郭老师-向内求,是你最好的转运方式
  • 让 AI 学会“成长“:从 Hermes Agent 提炼通用的自我进化 Skill
  • 英雄联盟回放文件终极指南:如何用ROFL-Player解锁历史比赛数据分析
  • 华为S5720-52X-LI-AC交换机Web堆叠配置全流程解析
  • QT上位机实战:STM32串口烧录BIN文件的完整流程与常见问题排查
  • UVM进阶篇 -(21)UVM打印信息机制的高级配置与调试技巧
  • LLM 微调策略:LoRA vs QLoRA vs P-tuning
  • MPU6500的I2C主控模式实战:教你用一颗MCU同时读取多个外部传感器
  • md2pptx:当Markdown遇见PowerPoint的优雅解法
  • 前端交互新宠 | Tippy.js 实战指南 [特殊字符]
  • 如何在5分钟内搭建暗黑2存档编辑器,实现角色属性自由定制?
  • Plot_setupRealtimeDataDemo
  • 告别WAV文件:用Python客户端实时调用FunASR服务,实现流式语音识别与热词增强
  • WinUtil:如何快速配置Windows系统的完整工具集指南
  • # 008、模型评估:mAP、混淆矩阵——别让模型在测试集上“作弊”
  • 如何快速解密SWF文件:JPEXS逆向工具的完整指南
  • 联盟链核心协议体系详解:从章程到技术服务的完整框架
  • AI伦理自学路径:免费资源大全
  • 高企申报踩坑无数,广东这家15年本土机构 - 沐霖信息科技
  • 2025届毕业生推荐的十大降AI率助手解析与推荐
  • 别再死记硬背了!用Multisim仿真带你搞懂电容三端LC振荡器(考毕兹/克拉泼/西勒电路对比)