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

allure生成测试报告(搭配Pytest、allure-pytest)

文章目录

  • 前言
  • allure简介
  • allure安装
    • 软件下载
    • 安装
    • 配置环境变量
    • 安装成功验证
  • allure运行流程
    • allure装饰器函数
      • 基本说明
      • 装饰器函数
      • 使用
      • allure.attach
    • 命令行运行
      • 利用allure-pytest生成中间结果json
  • 查看测试报告
    • 总览页面
    • 每个tab页的说明
    • 类别页面
    • 测试套
    • 图表页面
    • 时间刻度
    • 功能页面
  • 参考目录


前言

阅读本文前请注意最后编辑时间,文章内容可能与目前最新的技术发展情况相去甚远。欢迎各位评论与私信,指出错误或是进行交流等。


allure简介

在这里插入图片描述
官方文档地址:https://allurereport.org/docs/

  • 它是一个生成HTML测试报告的工具包
  • 使用java开发,需要java环境
  • 功能强大 , 生成的报告美观、直观

allure安装

软件下载

想更好地使用allure,可以安装如下软件 :

安装软件用途链接地址
javaallure使用java开发,所以必须要有运行环境https://www.oracle.com/cn/java/technologies/downloads/
allure生成测试报告https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/
python编写测试用例等所需语言https://www.python.org/
pycharm开发工具IDEhttps://www.jetbrains.com/pycharm/download/?section=windows
pytestpython测试框架pip install pytest
allure-pytestpytest的插件 让allure和pytest配合pip install allure-pytest

安装

  • allure无需安装,直接解压到一个指定的路径下即可
  • java、python、pycharm的安装教程请各位自行搜索资料
  • 在安装完python后,pytest只需要在cmd命令中运行pip install pytest即可自动安装 。
  • 在安装完pytest后,只需要在cmd命令中运行pip install allure-pytest即可自动安装 。

配置环境变量

Java、python、allure都需要进行环境变量配置,Java、python的环境变量配置请各位自行搜索资料。

allure环境配置
此电脑-鼠标右击-属性-高级系统设置-环境变量-系统变量下的Path-新建-添加allure环境变量(填写 allure 解压的路径),具体如下:
在这里插入图片描述

安装成功验证

除了pycharm无需验证外,其它的都可以输入命令进行验证,打开cmd窗口输入以下命令进行验证:

# 1. java验证 :
java --version
​
# 2. python验证 :
python -V
​
# 3. allure验证
allure --version
​
# 4. pytest验证
pip show pytest

allure运行流程

在这里插入图片描述

allure运行流程主要分为以上的三步:

  1. 在编写好的测试用例中添加allure装饰器
  2. 在cmd处,运行allure命令 添加所需参数 ,它就会生成测试报告
  3. 通过浏览器查看生成的测试报告

allure装饰器函数

基本说明

# 作用:用于将测试用例的数据展示到测试报告中
# 导入:import allure
# 说明 : 1.需要将这些装饰器函数添加在测试方法或测试类的开头。2.同一个类或者一个方法可以添加多个装饰器函数

装饰器函数

函数说明
@allure.epic()项目名称
@allure.feature()模块名称
@allure.story()子模块
@allure.title(用例标题)用例标题
@allure.severity()用例等级 包括:blocker,critical,normal,minor,trivial
@allure.step()测试步骤
@allure.description()测试用例描述 例:可以写预期结果
@allure.testcase(url)测试用例链接
@allure.issue(url)测试bug链接
@allure.link(url)链接到被测系统地址
@allure.attachment()附件 可以添加截图或者日志

以上的装饰器其实就是对应测试用例模板中的一些字段 ,具体如下 :
在这里插入图片描述

使用

在这里插入图片描述

allure.attach

allure.attach(body, name, attachment_type, extension)
作用:在测试报告中生成指定内容、名称、类型的附件,可以补充测试数据、测试结果截图等;
参数列表

  • body:要显示的内容(附件),也可以理解为写入附件的内容
  • name:附件名字
  • attachment_type:附件类型,是 allure.attachment_type 里面的其中一种
  • extension:附件的扩展名(比较少用)

allure.attachment_type提供的附件类型 如下所示
在这里插入图片描述

另外一种方式 allure.attach.file(source, name=None, attachment_type=None, extension=None)
作用:向测试用例中上传附件
参数说明:source为文件路径,其他参数与allure.attach()参数一致。
在UI自动化测试中,会经常用到这个方法来上传用例执行的截图。

示例

import allure
import pytest
import requests
import jsondata = [("lilei", "123456"), ("hanmeimei", "888888"), ("xiaoming", "111111")]
ids = ["username:{}-password:{}".format(username, password) for username, password in data]@allure.epic("xx在线购物平台接口测试")
@allure.feature("登录模块")
class TestLogin:@allure.story("用户登录")@allure.title("登录")@pytest.mark.parametrize("username, password", data, ids=ids)def test_login(self, username, password):headers = {"Content-Type": "application/json;charset=utf8"}url = "http://127.0.0.1:5000/login"_data = {"username": username,"password": password}allure.attach(body="用户名-{},密码-{}".format(username, password),name="登录参数",attachment_type=allure.attachment_type.TEXT)res = requests.post(url=url, headers=headers, json=_data).textres = json.loads(res)assert res['code'] == 1000@allure.story("用户退出登录")@allure.title("退出登录")def test_logout(self):'''这条测试用例仅仅只是为了举例说明allure.attach.file的使用'''print("退出登录,并截图")# 截图路径testcase_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))source_path = testcase_path + "/screenshot/logout.jpg"allure.attach.file(source=source_path,name="退出登录后截图",attachment_type=allure.attachment_type.JPG)assert True

测试报告结果展示如下:
allure.attach()结果:
在这里插入图片描述
allure.attach.file()结果:
在这里插入图片描述

将以上的装饰器整理后就是如下的结构 ,按照此结构可以整理出你的测试用例 。
在这里插入图片描述
注意:

  • 每一个装饰器都是可选项,可加可不加 。比如你把feature去掉了,那么在报告中就不展示这一层级了 ,其它也是如此。
  • epic、feature、story、title主要用来显示层级 ,而到了title层里,就是显示具体的内容 ,内容包括severity,description,testcase ,issue,link,step等
  • 除了step和attachment比较特殊以外,它们都是放在方法内使用 ,其它的都是标注在测试方法的开头或者类的开头 。

根据层级结构,在项目中该怎么组织我们的测试用例呢 ?一般就是按照项目结构一层一层的组织下来 ,比如 :(仅作参考)
在这里插入图片描述

命令行运行

allure命令行参数,可以打开cmd窗口输入以下命令查看帮助

allure --help

帮助信息:

Usage: allure [options] [command] [command options]Options:--helpPrint commandline help.-q, --quietSwitch on the quiet mode.Default: false-v, --verboseSwitch on the verbose mode.Default: false--versionPrint commandline version.Default: falseCommands:generate      Generate the reportUsage: generate [options] The directories with allure resultsOptions:-c, --cleanClean Allure report directory before generating a new one.Default: false--configAllure commandline config path. If specified overrides values from--profile and --configDirectory.--configDirectoryAllure commandline configurations directory. By default usesALLURE_HOME directory.--profileAllure commandline configuration profile.-o, --report-dir, --outputThe directory to generate Allure report into.Default: allure-report
​serve      Serve the reportUsage: serve [options] The directories with allure resultsOptions:--configAllure commandline config path. If specified overrides values from--profile and --configDirectory.--configDirectoryAllure commandline configurations directory. By default usesALLURE_HOME directory.-h, --hostThis host will be used to start web server for the report.-p, --portThis port will be used to start web server for the report.Default: 0--profileAllure commandline configuration profile.
​open      Open generated reportUsage: open [options] The report directoryOptions:-h, --hostThis host will be used to start web server for the report.-p, --portThis port will be used to start web server for the report.Default: 0
​plugin      Generate the reportUsage: plugin [options]Options:--configAllure commandline config path. If specified overrides values from--profile and --configDirectory.--configDirectoryAllure commandline configurations directory. By default usesALLURE_HOME directory.--profileAllure commandline configuration profile.

具体格式如下:

allure格式: allure [options] [command] [command options]

第一部分是[options],这里我们不做介绍。

主要着眼于[command]中的 generate 以及其[command options]

Usage: generate [options] The directories with allure resultsOptions:-c, --cleanClean Allure report directory before generating a new one.Default: false--configAllure commandline config path. If specified overrides values from--profile and --configDirectory.--configDirectoryAllure commandline configurations directory. By default usesALLURE_HOME directory.--profileAllure commandline configuration profile.-o, --report-dir, --outputThe directory to generate Allure report into.Default: allure-report

主要使用的两个[command options] :
-c : 每次生成报告前清除之前生成的报告文件 ,不加此选项则默认为不清除 。
-o : 生成报告的路径 ,也就是你要将测试报告输出到哪里 。

最终可以在cmd窗口运行如下命令:

allure generate JSON路径 -o 生成测试报告路径 -c 

这里有一个JSON路径,这个需要通过pytest生成一堆json文件,存放这堆JSON文件的这个路径就是JSON路径。
随后allure将这些Pytest生成的中间结果json,转换成测试报告。
在这里插入图片描述

利用allure-pytest生成中间结果json

在安装了allure-pytest之后,我们可以通过配置 pytest.ini 全局配置文件,
或者是利用命令行运行,添加上下方对应的参数。使得pytest生成中间结果json。

# --alluredir=./temps:设置allure生成临时的json格式的报告存放的路径(相对于 pytest 命令所在目录的测试报告目录)
# --clean-alluredir:清空上一次运行的记录addopts = -vs --alluredir=./temps --clean-alluredir

命令执行完后,会在目录下生成一些中间结果json文件:
在这里插入图片描述
随后使用allue命令

import os
import pytest
# ./temps 是中间结果json的存放目录
if __name__ == '__main__':pytest.main()# 调用allure生成报告os.system("allure generate ./temps -o ./report --clean")

查看测试报告

总览页面

生成的报告就是如下的情况 :默认在总览页面
在这里插入图片描述
在这里插入图片描述

每个tab页的说明

在这里插入图片描述

类别页面

所谓类别,就是按照不同用例的运行结果划分的一个分类 ,具体包括 :

  • 报错的用例
  • 运行失败的用例
  • 运行成功的用例
  • 跳过的用例
  • 未知的用例

在这里插入图片描述

测试套

这里的测试套,并不是测试套件 ,它只是按照你项目测试用例的层级一层一层的组织展示的。比如代码层级为:

cases:test_login.pytest_buy_flow.pytest_reg.py# test_login.py中的代码为:
class TestLogin():pass# test_buy_flow.py中的代码为:
class TestBuyFlow():pass# test_reg.py中的代码为
class TestReg():pass

以上的用例组织结构就变为下图的展示方式了 。
在这里插入图片描述

图表页面

这个就是按照不同的维度进行了数据统计,包括:用例状态、优先级、耗时等。
在这里插入图片描述

时间刻度

主要统计各个用例的运行时间 ,比如想知道那些用例运行花费的时间长,看这个数据就可以知道 。

功能页面

allure的装饰器函数 ,分别给每个用例都做了标记 ,那么所标记的结果就是从功能里查看 ,具体如下:

在这里插入图片描述

此功能忽略中间层级 ,只展示测试方法,即测试用例 ,对于看测试具体结果来说更加直观。

在这里插入图片描述


参考目录

https://www.bilibili.com/video/BV1yg411o7EV
https://www.bilibili.com/video/BV1gB4y1v7Ki
https://www.bilibili.com/video/BV15F4m1w7Wg
https://www.bilibili.com/video/BV1zS4y167RY
https://www.bilibili.com/video/BV1Uk4y1Y7pA
https://blog.csdn.net/venustech0919/article/details/133852086
https://blog.csdn.net/weixin_44904239/article/details/135647536
https://blog.csdn.net/qq_53071851/article/details/131013824
https://blog.csdn.net/u012111923/article/details/133147327
https://blog.csdn.net/hlsxjh/article/details/144191616
https://blog.csdn.net/YZL40514131/article/details/129109202
https://blog.csdn.net/liuchunming033/article/details/79624474
https://blog.csdn.net/HUA6911/article/details/136911347
https://blog.csdn.net/qq_41221411/article/details/142727220
https://blog.csdn.net/hlsxjh/article/details/136584525

相关文章:

allure生成测试报告(搭配Pytest、allure-pytest)

文章目录 前言allure简介allure安装软件下载安装配置环境变量安装成功验证 allure运行流程allure装饰器函数基本说明装饰器函数使用allure.attach 命令行运行利用allure-pytest生成中间结果json 查看测试报告总览页面每个tab页的说明类别页面测试套图表页面时间刻度功能页面包 …...

一场陟遐自迩的 SwiftUI + CoreData 性能优化之旅(下)

概述 自从 SwiftUI 诞生那天起,我们秃头码农们就仿佛打开了一个全新的撸码世界,再辅以 CoreData 框架的鼎力相助,打造一款持久存储支持的 App 就像探囊取物般的 Easy。 话虽如此,不过 CoreData 虽好,稍不留神也可能会…...

java的输入输出模板(ACM模式)

文章目录 1、前置准备2、普通输入输出API①、输入API②、输出API 3、快速输入输出API①、BufferedReader②、BufferedWriter 案例题目描述代码 面试有时候要acm模式,刷惯leetcode可能会手生不会acm模式,该文直接通过几个题来熟悉java的输入输出模板&…...

浏览器自动化与网络爬虫实战:工具对比与选型指南

浏览器自动化与网络爬虫实战:工具对比与选型指南 摘要 在当今数字化时代,浏览器自动化和网络爬虫技术已成为数据收集与测试的重要工具。本文深入剖析了多种主流浏览器自动化工具和爬虫框架的特点、优缺点及其适用场景,包括 Selenium、Puppe…...

“双非” “退伍” “材料” “学验证” 拿到Dream Offer

大家好,我是2024年路科验证V2X春季班的学员。在春季班的课上完后,觉得自己的基础大部分已经被路科给弥补了,但是很多课程中关于框架的搭建和一些细节还是不够扎实,有所欠缺,于是又重修了秋季班的课程。这两次课程给我的…...

python 上海新闻爬虫, 上观新闻 + 腾讯新闻

1. 起因, 目的: 继续爬上海新闻, 增加新闻来源。昨天写了: 东方网 澎湃新闻今天增加2个来源: 上观新闻 腾讯新闻此时有4个来源,我觉得已经差不多了。 2. 先看效果 3. 过程: 代码 1, 上观新闻 这里也有一个有趣的…...

【LUT技术专题】ECLUT代码解读

目录 原文概要 1. 训练 2. 转表 3. 测试 本文是对ECLUT技术的代码解读,原文解读请看ECLUT。 原文概要 ECLUT通过EC模块增大网络感受野,提升超分效果,实现SRLUT的改进,主要是2个创新点: 提出了一个扩展卷积&…...

Wsl2 网络模式介绍

每个模式说明参考下面连接 使用 WSL 访问网络应用程序 | Microsoft Learn...

项目高压生存指南:科学重构身体与认知系统的抗压算法

引言:压力重构的工程学思维 在项目管理的高压熔炉中,优秀从业者与普通执行者的核心差异不在于抗压能力的高低,而在于是否掌握压力管理的系统化算法。本文摒弃传统的鸡汤式减压建议,从人体工程学、神经科学和认知心理学角度&#…...

Java设计模式之工厂方法模式:从入门到精通

1. 工厂方法模式概述 1.1 定义与核心思想 工厂方法模式(Factory Method Pattern) **定义:**是一种创建型设计模式,它定义了一个用于创建对象的接口,但让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。 **核心思想:**工厂模式的核心思想是将对象的创建…...

生成自定义的androidjar文件具体操作

在Androidsdk目录下的platform找到对应的api的android源码包路径,如android-32拷贝里面的android.jar文件到目录,如 C:\Users\xxxxxxx\Desktop\android\new_android_jar,然后解压android.jar到目录new_android_jar下。在编译后的aosp源码中找…...

在一台CentOS服务器上开启多个MySQL服务

1. 创建目录 mkdir -p /data/mysql3307/{data,tmp,logs} # 赋权 chown -R mysql:mysql /data/mysql3307 chmod -R 750 /data/mysql3307 2.修改 /etc/my.cnf ,添加[mysqld3307]实例配置组 [mysqld3307] # MySQL服务的端口 port 3307 # 套接字文件存放路径 socket /…...

相机的方向和位置

如何更好的控制相机按照我们需要来更好的观察我们需要的地貌呢? 使用 // setview瞬间到达指定位置,视角//生成position是天安门的位置var position Cesium.Cartesian3.fromDegrees(116.397428,39.90923,100)viewer.camera.setView({//指定相机位置destination: position, 在…...

云原生架构下的微服务通信机制演进与实践

📝个人主页🌹:慌ZHANG-CSDN博客 🌹🌹期待您的关注 🌹🌹 一、引言:通信机制是微服务架构的基础 随着软件系统复杂度的提升,“单体架构 → 微服务架构 → 云原生架构”逐步成为企业数字化转型的演进主线。而在微服务架构中,“服务间通信机制”决定了系统的稳定性…...

Git标签删除脚本解析与实践:轻松管理本地与远程标签

Git 标签删除脚本解析与实践:轻松管理本地与远程标签 在 Git 版本控制系统中,标签常用于标记重要的版本节点,方便追溯和管理项目的不同阶段。随着项目的推进,一些旧标签可能不再需要,此时就需要对它们进行清理。本文将通过一个完整的脚本,详细介绍如何删除本地和远程的 …...

5G让媒体传播更快更智能——技术赋能内容新时代

5G让媒体传播更快更智能——技术赋能内容新时代 在5G时代,媒体传播已经不再是传统的“电视纸媒网站”模式,而是演变成超低延迟、高速传输、智能交互的全新生态。无论是直播、短视频、VR/AR内容还是AI驱动的个性化推荐,5G的高速连接能力都在让…...

数字IC前端学习笔记:锁存器的综合

相关阅读 数字IC前端专栏https://blog.csdn.net/weixin_45791458/category_12173698.html?spm1001.2014.3001.5482 锁存器是一种时序逻辑,与寄存器相比面积更小,但它的存在会使静态时序分析(STA)变得更加复杂,因此懂得什么样的设计会综合出…...

Spring Boot快速开发:从零开始搭建一个企业级应用

Spring Boot快速开发:从零开始搭建一个企业级应用 在当今的软件开发领域,Spring Boot已经成为构建企业级应用的首选框架之一。它不仅简化了Spring应用的初始搭建以及开发过程,还提供了许多开箱即用的功能,使得开发者能够快速地构…...

ATH12K驱动框架架构图

ATH12K驱动框架架构图 ATH12K驱动框架架构图(分层描述)I. 顶层架构II. 核心数据结构层次关系III. 主要模块详解1. 核心模块 (Core)2. 硬件抽象层 (HAL)3. 无线管理接口 (WMI)4. 主机目标通信 (HTC)5. 复制引擎 (CE)6. MAC层7. 数据路径 (DP)IV. 关键数据流路径1. 发送数据流 …...

数字信号处理|| 离散序列的基本运算

一、实验目的 (1)进一步了解离散时间序列时域的基本运算。 (2)了解MATLAB语言进行离散序列运算的常用函数,掌握离散序列运算程序的编写方法。 二、实验涉及的MATLAB子函数 (1)find 功能:寻找非零元素的索…...

集成管理工具Gitlab

GitLab 是一个功能强大的开源代码托管和协作平台,集成 GitLab 可以显著提升团队的开发效率。下面我将为你介绍如何集成 GitLab,包括安装配置和基本使用流程。 一、GitLab 安装与配置 GitLab 有多种安装方式,推荐使用官方 Omnibus 包安装&am…...

2025 年数维杯数学建模 C 题完整论文代码模型:清明时节雨纷纷,何处踏青不误春

《2025 年数维杯数学建模 C 题完整论文代码模型》 C题完整论文 一、问题重述 1.1 问题背景 2025 年第十届数维杯大学生数学建模挑战赛 C 题,将我们带入“清明时节雨纷纷,何处踏青不误春”的诗意情境。清明节,这个处于每年 4 月 4 日至 6 …...

2025数维杯数学建模C题完整限量论文:清明时节雨纷纷,何处踏青不误春?

2025数维杯数学建模C题完整限量论文:清明时节雨纷纷,何处踏青不误春? 清明节,在每年 4 月 4 日至 6 日之间,既是自然节气,也是我国重要 的传统节日,承载着中华民族千年的文化记忆与情感寄托。此…...

POSE识别 神经网络

Pose 识别模型介绍 Pose 识别是计算机视觉领域的一个重要研究方向,其目标是从图像或视频中检测出人体的关键点位置,从而估计出人体的姿态。这项技术在许多领域都有广泛的应用,如动作捕捉、人机交互、体育分析、安防监控等。 Pose 识别模型的…...

Missashe高数强化学习笔记(随时更新)

Missashe高数强化学习笔记 说明:这篇笔记用于博主对高数强化课所学进行记录和总结。由于部分内容写在博主的日记博客里,所以博主会不定期将其重新copy到本篇笔记里。 第一章 函数极限连续 第二章 一元函数微分学 第三章 一元函数积分学 第一节 不定…...

如何从极狐GitLab 容器镜像库中删除容器镜像?

极狐GitLab 是 GitLab 在中国的发行版,关于中文参考文档和资料有: 极狐GitLab 中文文档极狐GitLab 中文论坛极狐GitLab 官网 从容器镜像库中删除容器镜像 (BASIC ALL) 您可以从您的容器镜像库中删除容器镜像。 要基于特定标准自动删除容器镜像&#x…...

出现在‘{‘的段错误

今天在运行程序时,程序因段错误退出了,于是使用gdb调试。 部分输出如下: [New Thread 0x7fffc88be6c0 (LWP 47902)] [New Thread 0x7fffc80bd6c0 (LWP 47903)] [New Thread 0x7…...

【C++设计模式之Observer观察者模式】

Observer观察者模式 模式定义动机(Motivation)结构(Structure)应用场景一(气象站)实现步骤1.定义观察者接口2.定义被观察者(主题)接口3.实现具体被观察者对象(气象站)4.实现具体观察者(例如:显示屏)5.main.cpp中使用示例6.输出结果7. 关键点 …...

【软件测试】测试用例的概念与常见测试的模型

目录 一、测试用例的概念 1.1 什么是测试用例 1.2 编写测试用例的目的 1.3 用例设计的编写格式 二、模型 2.1 质量模型 2.2 测试模型 2.2.1 瀑布模型 2.2.2 螺旋模型 2.2.3 V 模型 2.2.4 W模型 2.2.5 增量、迭代模型 2.2.6 敏捷模型 2.2.6.1 敏捷宣言 2.2.6.2 Sc…...

OpenCV的 ccalib 模块用于自定义标定板的检测和处理类cv::ccalib::CustomPattern()----函数calibrate

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 cv::ccalib::CustomPattern 是OpenCV的 ccalib 模块中的一个类,主要用于自定义标定板的检测和处理。这个模块提供了比传统的 calib3d…...

高效管理钉钉收款单数据集成到MySQL的技术方案

钉钉数据集成到MySQL的技术案例分享:dd-收款单-->mysql(鸿巢)收款单(其他收款) 在企业日常运营中,数据的高效管理和实时处理至关重要。本文将聚焦于一个具体的系统对接集成案例:如何将钉钉平…...

介质访问控制(MAC)

介质访问控制(MAC)详解 介质访问控制(Medium Access Control, MAC)是数据链路层的核心子层,负责解决多个设备共享同一通信介质时的冲突问题。它的核心目标是:在广播或多路访问网络中,确保数据有…...

在Mac M1/M2上使用Hugging Face Transformers进行中文文本分类(完整指南)

在Mac M1/M2上使用Hugging Face Transformers进行中文文本分类(完整指南) 前言 随着Apple Silicon芯片(M1/M2)的普及,越来越多的开发者希望在Mac上运行深度学习任务。本文将详细介绍如何在Mac M1/M2设备上使用Huggin…...

企业如何将钉钉付款单高效集成到金蝶云星空?

钉钉数据集成到金蝶云星空:修改下推的付款单③ 在企业信息化系统中,数据的高效流转和准确对接是实现业务流程自动化的关键。本文将分享一个实际案例,展示如何通过轻易云数据集成平台,将钉钉中的付款单数据无缝集成到金蝶云星空系…...

软件确认报告:审查功能、评估标准及推动软件稳定高效运行

软件确认报告的主要任务是严格审查软件的各项功能,以此为基础,为精确评估其是否满足标准提供依据,并推动软件实现稳定与高效的运行。具体来说,报告将从目的、背景、所依据的资料、采用的测试手段以及最终的测试成效等几个方面进行…...

Github 热点项目 Cursor开源代替,AI代理+可视化编程!支持本地部署的隐私友好型开发神器。

Void编辑器今天必须拥有姓名!作为总星数近1.5万的顶流开源工具,它用三大绝活圈粉无数:① 隐私党狂喜!所有AI对话直连模型商,你的代码数据绝不留在别人服务器;② 自带时光机功能,AI修改代码时自动…...

影像超分——从低清到高清的跨越密码

在数字时代,影像超分技术宛如魔法般存在,它能让老旧模糊的照片焕发新生但目前面临着高计算量、稳定性不足,压缩与量化误差影响大,退化模型的估计难度高等痛点与挑战,本文将围绕影像超分的工作技术原理、应用场景等展开…...

Vue项目---懒加载的应用

懒加载 介绍原理展示详细解析模版部分脚本部分数据和变量IntersectionObserver加载更多数据生命周期钩子 代码Mock数据前端代码 介绍 懒加载(Lazy Loading)是一种常见的前端优化技术,用于延迟加载页面上的资源(如图片、视频、组件…...

前端自学入门:HTML 基础详解与学习路线指引

在互联网的浪潮中,前端开发如同构建数字世界的基石,而 HTML 则是前端开发的 “入场券”。对于许多渴望踏入前端领域的初学者而言,HTML 入门是首要挑战。本指南将以清晰易懂的方式,带大家深入了解 HTML 基础,并梳理前端…...

机器学习 期末考试题

自测试卷1 一、选择题 1.下面关于数据分析说法正确的是( )。 A.数据分析是数学、统计学理论结合科学的统计分析方法 B.数据分析是一种数学分析方法 C.数据分析是统计学分析方法 D.数据分析是大数据分析方法 2.下面不是数据分析方法的是( )。 A.同比分析 B.环比分析…...

BP神经网络

一、BP 神经网络概述 BP(Back Propagation)神经网络是一种按照误差逆向传播算法训练的多层前馈神经网络,它是目前应用最广泛的神经网络模型之一。BP 神经网络由输入层、隐藏层和输出层组成,隐藏层可以有一层或多层。其学习过程由正…...

使用 NSSM 安装 Tomcat 11.0.6 为 Windows 服务

步骤 1&#xff1a;下载 NSSM 访问 NSSM 的官方网站&#xff1a;NSSM Download 下载适合您系统的版本&#xff08;通常是 nssm-<version>-win64.zip 或 nssm-<version>-win32.zip&#xff09;。 解压下载的文件。 步骤 2&#xff1a;将 NSSM 移动到 Tomcat 目录…...

拉西坦类促智药物的异同

吡拉西坦及其主要同类药物的深度研究报告 以下表格总结了本报告所讨论的主要拉西坦类药物的关键特性&#xff0c;以便进行直接比较。 表1&#xff1a;主要拉西坦类药物特性比较 特性 吡拉西坦 (Piracetam) 阿尼西坦 (Aniracetam) 奥拉西坦 (Oxiracetam) 普拉西坦 (Pramir…...

高级可视化图表分析实践——以《大侠立志传》武器系统为例

高级可视化图表分析实践——以《大侠立志传》武器系统为例 引言武器类型分布矩形树图结论 不同品质/类别武器的攻击力分布情况蜂群图分析结论 武器来源桑基图分析结论 武器附加属性词云图分析结论 不同品级武器装备熟练度要求/特质要求离散热力图结论品质与熟练度的正相关性品质…...

HT71663同步升压2.7V-13V输入10A聚能芯半导体禾润一级代理

在便携式设备飞速发展的今天&#xff0c;电源转换效率与产品尺寸始终是行业难以平衡的难题。但现在&#xff0c;HT71663 高功率全集成升压转换器强势登场&#xff0c;一举打破僵局&#xff0c;为便携式系统带来颠覆性的高效小尺寸解决方案&#xff01;​ HT71663 的卓越性能&am…...

3D桌面可视化开发平台HOOPS Native Platform,如何实现3D系统快速开发与部署?

无论是制造、工程还是软件行业&#xff0c;高效的3D应用开发能力都直接影响着产品创新、客户体验和市场响应速度。HOOPS技术&#xff0c;凭借领先的技术实力和广泛的行业应用&#xff0c;正成为推动企业数字化转型、驱动业务增长的核心引擎。本文将深入解析HOOPS技术的优势&…...

DeepResearch深度搜索实现方法调研

DeepResearch深度搜索实现方法调研 Deep Research 有三个核心能力 能力一&#xff1a;自主规划解决问题的搜索路径&#xff08;生成子问题&#xff0c;queries&#xff0c;检索&#xff09;能力二&#xff1a;在探索路径时动态调整搜索方向&#xff08;刘亦菲最好的一部电影是…...

使用Python删除PDF中多余或空白的页面

目录 为什么需要删除 PDF 中的多余或空白页面&#xff1f; 所需工具 环境准备 如何使用Python删除PDF中的多余页面 实现思路 详细实现步骤 实现代码 如何使用Python检测并删除PDF中的空白页 实现思路 详细实现步骤 实现代码 在处理 PDF 文件时&#xff0c;常常会遇到…...

什么是分布式光伏系统?屋顶分布式光伏如何并网?

政策窗口倒计时&#xff01;分布式光伏如何破局而立&#xff1f; 2025年&#xff0c;中国分布式光伏行业迎来关键转折&#xff1a; ▸ "430"落幕——抢装潮收官&#xff0c;但考验才刚开始&#xff1b; ▸ "531"生死线——新增项目全面市场化交易启动&…...

MySQL——七、索引

优势&#xff1a;极高查询效率&#xff1b;极高排序效率 劣势&#xff1a;占用磁盘空间&#xff1b;降低更新表的速度&#xff08;可忽略&#xff0c;磁盘相对便宜&#xff1b;增删改比例较小&#xff09; 索引结构 MYSQL的索引是在存储引擎层实现的&#xff0c;不同的存储引…...