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

Allure在自动化测试中的应用

01 Allure的简介及使用

1、应用场景

自动化的结果一定是通过一个报告来进行体现

Allure 是一个独立的报告插件,生成美观易读的报告,目前支持Python、Java、PHP、C#等语言

为dev/QA 提供详尽的测试报告、测试步骤、日志,也可以为管理层提供统计报告

可以集成到Jenkins

  • 安装alllure可执行文件

  • Windows环境可以直接使用包(参考工具包)解压后配置环境变量

  • 验证allure是否安装成功

    图片

Mac:

brew install allure

安装插件

pip install allure-pytest==2.8.16

注意pytest版本匹配问题

图片

最终我们会生成一个 html 格式的报告,中间我们需要操作两步来进行

  • 执行生成json,指定结果保存目录

pytest --alluredir=report test_demo.py

查看测试报告方式

  • 将json转成 html ,使用allure generate生成html格式的测试报告

    a.进入 report 上级目录执行命令

    b.allure generate report/ -o report/html --clean

    c.report 目录下会生成 html 文件夹,html 下会有一个 d.index.html ,右键用浏览器打开即可

allure generate report/ -o report/html --clean 是什么意思?

图片

02 Allure与Pytest结合

1、添加测试步骤

图片

报告显示:

图片

2、添加主要功能模块描述

图片

报告显示:

图片

3、添加严重等级

参数有五个,也对应不同的优先级,只需要将最后一个词替换即可

  • BLOCKER 最严重

  • CRITICAL 严重

  • NORMAL 普通

  • MINOR 不严重

  • TRIVIAL 最不严重

图片

报告显示:

03 Allure集成Jenkins

1、Jenkins介绍和安装

应用场景

写好一个自动化测试项目的代码之后,需要在命令行中使用 pytest 运行,然后在使用命令行生成 allure 报告,使用 jenkins 可以自动的完成这些操作。

介绍

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,提供一 个开放、易用的软件平台。

安装方式:(推荐解压缩包安装)

  • 需要依赖java环境

  • 命令行进入Jenkins.war的所在目录

  • 输入java -jar jenkins.war

  • 启动成功后,浏览器输入地址:localhost:8080

通过命令进入个人用户的目录下,找到.jenkins文件夹把工具包内的.jenkins进行替换

2、Jenkins安装allure插件

场景

使用Jenkins帮我们生成allure报告文件,需要安装插件

安装流程:

  • jenkins主页面点击系统管理

  • 点击管理插件

  • 点击可选插件 -- 搜索框输入 allure 点击直接安装

jenkins安装allure commandline工具

场景:

转换allure报告的格式为html格式 需要该工具

安装流程:

  • 点击系统管理

  • 点击全局工具配置

    allure commandline

  • 点击 allure commandlin 安装

  • 安装目录 -- 本地配置环境变量路径

    图片

  • 别名 :自定义

  • 取消自动安装,点击保存

3、jenkins持续集成配置

前置条件:编写自动化脚本,确保使用pycharm能够顺利运行

新建jenkins项目

点击新建

图片

自定义任务名称

点击构建一个自由风格的软件项目 ,点击确定

图片

General设置

点击高级

图片

自定义工作空间

地址可以填写项目地址

图片

构建 Windows环境

切换到项目路径下 -- 执行pytest命令

图片

构建后操作

注意保存目录和命令目录一致

图片

点击高级

填写html文件生成路径,点击保存

图片

查看报告

点击allure report

图片

查看控制台输出信息

点击对应项

图片

点击 console output

图片

展示输出信息

图片

相关文章:

Allure在自动化测试中的应用

01 Allure的简介及使用 1、应用场景 自动化的结果一定是通过一个报告来进行体现 Allure 是一个独立的报告插件,生成美观易读的报告,目前支持Python、Java、PHP、C#等语言 为dev/QA 提供详尽的测试报告、测试步骤、日志,也可以为管理层提供统…...

C# 探险之旅:第十一节 - 循环(foreach):一场“遍历”奇幻岛的大冒险!

嘿,勇敢的探险家们!欢迎来到C#奇幻岛的第十一站——“遍历”奇幻岛!今天,我们要乘坐一艘叫做foreach的魔法船,去遍历(也就是一个一个看过来)岛上那些神秘的宝藏箱!准备好了吗&#x…...

Ubuntu24.04配置STMTrack

项目地址:https://github.com/fzh0917/STMTrack 一、安装 CUDA 参考链接: Ubuntu24.04配置DINO-Tracker Ubuntu多CUDA版本安装及切换 由于之前在其他项目中已经安装了 CUDA12.1,这次需要安装另一个版本。 1. 查看安装版本 按照 requireme…...

【Java学习笔记】Map接口和常用方法

一、 Map接口实现类的 特点[很实用] key是自己存的java对象 value是一个固定的 //当有相同的 k ,就等价于替换. 二、 Map常用方法 (根据键–>k) 三、Map接口遍历方法 package com.hspedu.map_; import java.util.*; /** * author 韩顺平 * ver…...

uniapp支持App横竖屏开发总结

一、需求: app要支持重力感应自动切换横竖屏,并切换后样式不能错乱 二、实现 官方文档 官方Git manifest.json文件中 "app-plus" : {"screenOrientation" : ["portrait-primary","portrait-secondary","…...

【工作笔记】Lombok版本变化导致的反序列化异常

Lombok版本变化导致的反序列化异常 背景 因为安全性的考虑,最近在梳理旧系统的系统依赖。改动依赖时候还好,毕竟只是换掉不再合作公司的旧依赖,没敢动别的太多东西。不过没多久,测试团队就找来了… 排查问题之第一次跑偏 旧系…...

多模态大语言模型 MLLM 部署微调实践

1 MLLM 1.1 什么是 MLLM 多模态大语言模型(MultimodalLargeLanguageModel)是指能够处理和融合多种不同类型数据(如文本、图像、音频、视频等)的大型人工智能模型。这些模型通常基于深度学习技术,能够理解和生成多种模…...

LNMP和Discuz论坛

文章目录 LNMP和Discuz论坛1 LNMP搭建1.1 编译安装nginx服务1.1.1 编译安装1.1.2 添加到系统服务 1.2 编译安装MySQL服务1.2.1 准备工作1.2.2 编辑配置文件1.2.3 设置路径环境变量1.2.4 数据库初始化1.2.5 添加mysqld系统服务1.2.6 修改mysql的登录密码 1.3 编译安装PHP服务1.3…...

Cadence学习笔记 2 PCB封装绘制

基于Cadence 17.4,四层板4路HDMI电路 更多Cadence学习笔记:Cadence学习笔记 1 原理图库绘制 目录 2、PCB封装绘制 2、PCB封装绘制 封装尺寸如下。 用Allegro做PCB封装前,要先做焊盘(Allegro 比AD、PADS多一个步骤:绘制…...

网络安全——防火墙

基本概念 防火墙是一个系统,通过过滤传输数据达到防止未经授权的网络传输侵入私有网络,阻止不必要流量的同时允许必要流量进入。防火墙旨在私有和共有网络间建立一道安全屏障,因为网上总有黑客和恶意攻击入侵私有网络来破坏,防火…...

【CSS in Depth 2 精译_074】第 12 章 CSS 排版与间距概述 + 12.1 间距设置(下):行内元素的间距设置

当前内容所在位置(可进入专栏查看其他译好的章节内容) 第四部分 视觉增强技术 ✔️【第 12 章 CSS 排版与间距】 ✔️ 12.1 间距设置 12.1.1 使用 em 还是 px12.1.2 对行高的深入思考12.1.3 行内元素的间距设置 ✔️ 12.2 Web 字体12.3 谷歌字体 文章目…...

短视频矩阵抖音SEO源码OEM独立部署

短视频优化矩阵源码涉及对抖音平台上的视频内容进行筛选与排序,目的是增强其在搜索引擎中的可见度,以便更多用户能够浏览到这些视频。而抖音SEO优化系统则是通过构建一个分析框架,来解析抖音上的用户数据、视频信息及标签等元素,并…...

使用docker快速部署Nginx、Redis、MySQL、Tomcat以及制作镜像

文章目录 应用快速部署NginxRedisMySQLTomcat 制作镜像镜像原理基于已有容器创建使用 Dockerfile 创建镜像指令说明构建应用创建 Dockerfile 文件创建镜像 应用快速部署 Nginx docker run -d -p 80:80 nginx使用浏览器访问虚拟机地址 Redis docker pull redis docker run --…...

在ensp中ACL路由控制实验

一、实验目的 掌握ACL路由控制管理 二、实验要求 要求: 配置路由策略,左右两边不公开区域对方不可达,其他区域可以互相ping通 设备: 1、三台路由器 2、四台交换机 3、四台电脑 4、四台服务器 使用ensp搭建实验环境,如图所…...

μC/OS-Ⅱ源码学习(3)---事件模型

快速回顾 μC/OS-Ⅱ中的多任务 μC/OS-Ⅱ源码学习(1)---多任务系统的实现 μC/OS-Ⅱ源码学习(2)---多任务系统的实现(下) 本文开始,进入事件源码的学习。 事件模型 在一个多任务系统里,各个任务在系统的统筹下相继执行,由于执行速度极快&a…...

Jmeter进阶篇(30)深入探索 JMeter 监听器

前言 在性能测试领域里,Apache JMeter 是一款经典而强大的工具,而其中的监听器(Listeners)组件更是发挥着不可或缺的关键作用。 监听器就像敏锐的观察者,默默记录测试执行过程中的各种数据,作为系统性能分析的数据依据。 本文将带你全方位走进 JMeter 监听器的奇妙世界,…...

虚幻引擎的工程目录结构

虚幻引擎的工程目录结构如下: .idea/.vs:用于IDE(如IntelliJ IDEA或Visual Studio)的项目配置文件,包含工程设置和解决方案文件。 Binaries:存放编译后的可执行文件和相关的动态链接库(DLL&…...

深度学习中的yield

以下为例: def data_iter(batch_size, features, labels):num_examples len(features)indices list(range(num_examples))# 这些样本是随机读取的,没有特定的顺序random.shuffle(indices)for i in range(0, num_examples, batch_size):batch_indices …...

数据库数据恢复—ORACLE常见故障有哪些?如何恢复数据?

Oracle数据库常见故障表现: 1、ORACLE数据库无法启动或无法正常工作。 2、ORACLE ASM存储破坏。 3、ORACLE数据文件丢失。 4、ORACLE数据文件部分损坏。 5、ORACLE DUMP文件损坏。 Oracle数据库数据恢复方案: 1、检测存放数据库的服务器/存储设备是否存…...

使用JavaScrip和HTML搭建一个简单的博客网站系统

搭建一个简单的博客网站系统,我们需要创建几个基本的页面和功能:登录、注册、文章发布等。这里我们先实现一个基础版本,包括用户登录、注册以及文章发布的功能。由于这是一个简化版的示例,我们将所有逻辑集成在一个HTML文件中&…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

GitHub 趋势日报 (2025年06月08日)

📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

Ascend NPU上适配Step-Audio模型

1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...

Spring AI 入门:Java 开发者的生成式 AI 实践之路

一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...

MySQL中【正则表达式】用法

MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现(两者等价),用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例: 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...

(转)什么是DockerCompose?它有什么作用?

一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器。 Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...

Springboot社区养老保险系统小程序

一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...

中医有效性探讨

文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)​现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...

Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析

Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...