【性能测试】性能测试各知识第1篇:性能测试大纲【附代码文档】

性能测试完整教程(附代码资料)主要内容讲述:性能测试大纲。。。。。。。。。。。。。。

全套笔记资料代码移步: 前往gitee仓库查看

感兴趣的小伙伴可以自取哦,欢迎大家点赞转发~


性能测试大纲

|序号|阶段|概述| |---|---|---| |01|入门|1. 认识性能测试分类-(负载测试、压力测试、并发测试、稳定性测试)2. 常用性能测试指标-(吞吐量、并发数、响应时间、点击数...)3. 性能测试工具选择| |02|性能脚本|1. LoadRunner介绍2. 脚本录制、运行、参数化3. 关联、检查点、事务、集合点| |03|性能场景|1. 场景分类、场景设计、场景运行策略2. 资源监控、SLA、IP Wizard应用| |04|性能分析|1. 摘要报告、事务图表、图表合并2. 交叉结果、拐点分析、Web项目资源分析|

性能测试基础知识

目标

python 理解什么是性能测试 掌握性能测试的基础分类 熟悉性能测试的常用指标

什么是性能测试?

目标

python 了解为什么学习性能测试 掌握什么是性能测试 了解性能测试的焦点

概念

性能测试是模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行的测试。

说明:

python 峰值:客户指定指标数值或场景需求数值,如:CPU使用率80%以内、登录3秒、内存空间40%等等 负载:用户(一个或多个)向服务器发送请求,负载测试我们1.2节会讲解

性能测试与功能测试(焦点)

功能测试:验证软件系统操作功能是否符合产品功能需求规格,主要焦点在功能(正向、逆向);

性能测试:验证软件系统是否满足业务需求场景,主要焦点是业务场景的满足度(时间、空间);

说明: 时间:软件的响应时间... 空间:服务器的磁盘读写数率、CPU 使用率、内存空闲率...

功能测试和性能测试是相辅相成的,对于一款优秀的软件产品来讲,它们是测试工作中不可或缺的两个重要环节。

需求 解决方案

求职需求:

python 面试:会性能测试吗? 招聘信息:要求会使用性能测试工具LoadRunner、Jmeter

业务需求:

python 登录不得超过3秒钟 开发一款 Web 电商网站,使用 Java 还是 PHP 呢? OA 办公系统-我们公司20000左右员工需要使用此系统。

解决方案:

python 负载测试-根据客户实际应用场景模拟测试应用软件、服务器是否满足需求;如果不满足,则定位问题,进行调整直到满足需求; 分别使用 Java 和 PHP 写个 Demo,搭建相同的应用场景进行性能测试,找出最优符合应用场景的开发语言; 根据二八定律统计出单位时间内(秒)最高请求数。

性能测试分类及常用指标

性能测试是个综合的概述,性能测试指的是测试一种分类或多种分类,任何一具体分类,都是性能测试

一、性能测试常用分类

  1. 负载测试
  2. 压力测试
  3. 并发测试
  4. 稳定性测试

性能测试分类还有其他类型比如:配置测试、容量测试等,前期我们先熟悉以上常用分类

1.1 负载测试 【重点】

通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足系统的性能指标情况下,系统所能够承受的最大负载量的测试。(负载:向服务器发送请求)

负载测试是通过逐步加压的方式来确定系统的处理能力、确定系统能够承受的各项阀值。 例如:逐步加压,从而得到“响应时间不超过3秒”、“服务器CPU平均利用率低于80%”等指标的阀值。

*阀值:关注的某一具体数值(比如:登录小于3秒、用户数2000、业务成功率100%)

1.2 压力测试 【重点】

通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于【失效】状态。

  1. 压力测试:是逐步增加负载,使系统某些资源达到饱和甚至失效。(如:测试系统最多支持同时处理多少请求,超过此数数量系统瘫痪)

  2. 负载测试:是逐步增加负载,确定在满足性能指标情况下,系统能承受的最大负载测试。(如:登录3秒内,最多支持多少用户同时登录;如超出此数量,可能需要5秒钟或更多时间才能登录成功)
1.3 并发测试 【重点】

概念:并发测试就是【多用户】同时访问【同一个应用】。

目的:测试应用服务器指定功能的同时访问数是否达到预期结果。

*并发测试需要配合集合点来使用(集合点:我们在接口阶段已了解)

1.4 稳定性测试【理解】

通过给系统加载一定的业务压力(如:CPU资源在70%~90%的使用率)的情况下,运行一段时间,检查系统是否稳定。

*通常稳定性测试,我们测试一段时间即可;(如:24小时、3×24小时或7×24小时来模拟长时间运行)

二、性能测试常用指标【重要】

一些经过运算得出的结果,用来衡量某种操作性能的统称;比如:错误率0.5%

性能测试常用指标:

  1. 吞吐量
  2. 并发数
  3. 响应时间
  4. 点击数
  5. 资源利用率
  6. 错误率
2.1 吞吐量

吞吐量(Throughput):指的是单位时间内处理的客户端请求数量,直接体现软件系统的性能承载能力。 通常情况下,吞吐量用“请求数/秒”或者“页面数/分钟”来衡量。

从业务角度来看,吞吐量也可以用“业务数/小时”、“业务数/天”、“访问人数/天”、“页面访问量/天”来衡量。

从网络角度来看,还可以用“字节数/小时”、“字节数/天”等来衡量网络的流量。

2.2 并发数

并发(Concurrency):它最简单的描述就是指多个同时发生的业务操作。(例如,100个用户同时单击登录页面的“登录”按钮操作。)

并发性测试描述的是多个客户端同时向服务器发出请求,考察服务器端承受能力的一种性能测试方式。

2.3 响应时间

响应时间指用户从客户端发起一个请求开始,到客户端接收到从服务器端返回结果整个过程所耗费的时间

2.4 点击数

点击数是衡量Web服务器处理能力的一个重要指标。它的统计是客户端向Web服务器发了多少次HTTP请求计算的。

  1. 点击数不是通常一般人认为的访问一个页面就是1次点击数,点击数是该页面包含的元素(如:图片、链接、框架等)向Web服务器发出的请求数数量。
  2. 通常我们也用每秒点击次数(Hits per Second)指标来衡量Web服务器的处理能力。
2.5 资源利用率

是指系统各种资源的使用情况,一般用“资源的使用量/总的资源可用量×100%”形成资源利用率的数据。

通常,没有特殊需求的话:

  1. 建议CPU使用率不高于80%(±5);
  2. 内存使用率不高于80%;
  3. 磁盘读写时间比不高于90%。
2.6 错误率

错误率指系统在负载情况下,失败交易的概率。错误率=(失败交易数/交易总数)*100%。

  1. 不同系统对错误率要求不同,但一般不超过千分之五;
  2. 稳定性较好的系统,其错误率应该由超时引起,即为超时率。

三、性能常用测试工具

  1. Jmeter
  2. LoadRunner【本阶段学习】

性能测试的工具有很多,目前最常用就是这两款,我们作为性能测试初期入门掌握这两款工具足矣!

3.1 Jmeter

Apache 公司使用 Java 平台开发的一款测试工具

作用:性能测试、接口测试、Web测试(无GUI,GUI:graphical user interface)

优点:免费、开源、小巧

3.2 LoadRunner

HP公司使用C语言开发的一款性能负载测试工具

作用:模拟高并发负载测试、测试场景搭建、运行、监控及结果分析

优点:支持多协议、自带强大的图表功能、可根据需求合并需要的图表

缺点:收费

3.3 Jmeter 和 LoadRunner 的简单对比

Jmeter:接口测试及接口性能压测首选

LoadRunner:Web性能测试首选

性能测试基础知识

目标

python 理解什么是性能测试 掌握性能测试的基础分类 熟悉性能测试的常用指标

LoadRunner 11安装

一、安装步骤

  1. 解压 - Software_HP_LoadRunner_11.00_T7177_15013.iso
  2. 启动安装程序 - setup.exe(提示:权限-鼠标右键->以管理员身份运行);
  3. 根据安装提示进行配置并点击下一步操作,直到安装完成;
  4. 修改注册许可证

    注意:

    1). LoadRunner版本与操作系统的对应关系:

    ① LoadRunner 11版本推荐使用64位Windows 7旗舰版系统;

    ② LoadRunner 12版本推荐使用64位Windows 10专业版或教育版系统;

    2). 自动安装LoadRunner必要的依赖文件时,如遇要求重启电脑,则重启后再进行安装即可;

    3). 最好新建文件夹(如:C:\HP\LoadRunner)并且避免安装路径中有中文和空格;

    (原因:如果默认安装路径,则有可能导致LR自带的机票网站会出现登录异常;)

二、安装图解

2.1 解压Software_HP_LoadRunner_11.00_T7177_15013.iso后文件

loadrunner

鼠标右键->以管理员身份运行:setup.exe

2.2 点击安装选项

loadrunner

点击:LoadRunner 完整安装程序

2.3 确定安装loadrunner依赖程序

loadrunner

点击:确定

2.4 异常【重要】

loadrunner

处理办法:重启电脑

2.5 开始安装LoadRunner

loadrunner

点击:下一步

2.6 许可协议

loadrunner

点击:我同意、下一步

2.7 客户信息

loadrunner

处理:默认或根据需求填写 点击:下一步

2.8 选择安装文件夹【重要】

loadrunner

处理:新建指定文件夹(避免中文及空格、避免默认路径) 点击:下一步

2.9 确认安装

loadrunner

点击:下一步

2.10 安装中

loadrunner

处理:耐心等待

2.11 安装完成

loadrunner

点击:完成

2.12 查看-安装完成文件

loadrunner

点击:开始菜单-HP LoadRunner

3. 注册许可证-使用图

3.1 修改前

loadrunner

说明:使用用户类型:临时

3.2 修改后

loadrunner

说明:使用用户类型:永久

3.3 操作步骤

lf_file.rar文件下载

  1. 下载lf_file.rar文件,

  2. 将 lm70.dll、mlr5lprg.dll 两个文件复制并替换到LR11安装目录下的bin文件夹下

  3. 运行 lr删除注册表.exe 文件

  4. 输入注册信息(New License,以下注册码任选其一即可)

    1). Global-100的注册码:AEACFSJI-YJKJKJJKEJIJD-BCLBR

    2). Web-10000的注册码:AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB

    3). 最高支持6.5w个并发的注册码:AEACFSJI-YJKJKJJKEJIJD-BCLBR

1) lf_file.rar文件

loadrunner

2) 复制替换 lm70.dll、mlr5lprg.dll(位置:lr安装目录下bin目录)

loadrunner

3) 运行 lr删除注册表.exe 文件

loadrunner

4) 输入注册信息(New License)

启动注册窗口

loadrunner

loadrunner

loadrunner

性能测试流程

流程

python 1. 性能测试需求分析 2. 性能测试计划 3. 性能测试用例 4. 测试脚本编写 5. 测试场景设计 6. 测试场景运行 7. 场景运行监控 8. 运行结果分析 9. 系统性能调优 10. 性能测试报告总结

1 性能测试需求分析

需求分析就是把真正需求搞清楚

python 例如: 1). 公司需要对所有的功能都进行性能测试; 2). 用户登录响应时间小于3秒钟; 3). 系统支持20万用户并发访问;

2 性能测试计划

python 1). 性能测试计划是对性能测试过程描述的重要过程; 2). 在对需求文档经过认真分析后,作为性能测试管理人员,需要编写的第一份文档就是性能测试计划; 3). 性能测试计划中,需要阐述产品、项目的背景,将前期的需要测试性能需求明确,并落实到文档中。

3 性能测试用例

性能测试需求最终要体现在性能测试用例设计中,性能测试用例应结合用户应用系统的场景,设计出相应的性能测试用例,用例应能覆盖到测试需求。

python 提示: 1). 明确哪些功能业务量较大; 2). 明确系统预期的用户规模、并发用户数、在线用户数; 3). 明确系统业务的处理能力要求,如:TPS、响应时间、系统资源利用率等; TPS :(Transaction per second)事务数/秒 4). 详细的操作步骤及场景的搭建模式

4 测试脚本编写

性能测试用例编写完成以后,接下来就需要结合用例的需要,进行测试脚本的编写工作。

python 注意: 1). 协议的正确选用; 2). 脚本保证其正确性,去除冗余代码; 3). 注重编码的规范和代码的编写质量。

5 测试场景设计

测试场景设计的一个重要原则就是依据测试用例,把测试用例设计的场景展现出来。

python 提示: 1). 虚拟用户数量及启动虚拟用户方式 2). 场景的相关设置(如:集合点) 3). 脚本是否存在依赖关系(登录与注册)

6 测试场景运行

测试场景运行是关系到测试结果是否准确的一个重要过程。

python 注意: 1). 负载的测试机是否能够运行设定的虚拟用户数; 2). 有没有“预热”的过程; 3). 有没有模拟用户的真实环境; 4). 性能用例运行次数是否过少。

7 场景运行监控

场景运行监控,可以在场景运行时决定要监控那些数据,便于后期分析性能测试结果。

1). 应用性能测试工具的重要目的就是可以提取到本次测试关心的数据指标内容;

2). 性能测试工具利用应用服务器取得在负载过程中相关计数器的性能指标。

(计数器:计算、统计性能指标的工具)

python 注意:尽量搜集与系统测试目标相关信息,无关内容不必进行监控。

8 运行结果分析

性能测试执行过程中,性能测试工具搜集相关性能测试数据,待执行完成后,这些数据会存储到数据表或者 其他文件中,为了定位系统性能问题,我们需要系统分析这些性能测试结果。

python 提示: 1). 一般使用“拐点分析”方法,利用性能计数器曲线图上的拐点进行分析的方法。 (基本思想就是性能产生瓶颈的主要原因就是因为某个资源的使用达到了极限,此时表现为随着压力的增大, 系统性能却出现急剧下降,就产生了“拐点”现象。)

9 系统性能调优

性能测试分析人员经过对结果的分析以后,有可能提出系统存在性能瓶颈。

python 提示: 1). 调优人员(开发人员、数据库管理员、系统管理员、网络管理员、性能测试分析人员)相关人员对系统进行调整; 2). 验证-性能测试人员继续进行第二轮、第三轮...的测试,与以前的测试结果进行对比,从而确定经过调整以后的 系统性能是否有提升。

注意事项:

python 系统调优由易到难的先后顺序如下: 1. 硬件问题; 2. 网络问题; 3. 应用服务器、数据库等配置问题; 4. 源代码、数据库脚本问题; 5. 系统架构问题。

10 性能测试报告总结

性能测试总结要包含以下内容:

python 1). 性能测试需求覆盖情况,性能测试过程中出现的问题,如何去分析、调优、解决的; 2). 测试人员、进度控制与实际执行偏差和性能测试过程中遇到各类风险是如何控制的; 3). 经过该项目性能测试后,有那些经验和教训等内容。

性能测试工具-LoadRunner

学习目标

python 1. 理解基于VuGen的脚本录制 2. 掌握参数化的使用方法 3. 掌握关联的使用方法 4. 掌握检查点的使用方法 5. 掌握事务的使用方法 6. 掌握集合点的应用

LoadRunner介绍

一、LoadRunner简介

LoadRunner是一种工业级标准的性能负载测试工具;可以模拟上千万用户实施测试,并在测试时可实时检测应用服务器及服务器硬件的各种数据,来查找和确认存在的性能瓶颈;

支持多种协议,如:Web(HTTP/HTML)、Windows Sockets、FTP、ODBC、MS SQL Server等协议

二、LoadRunner组成【非常重要】

组成:

python 1. Virtual User Generator(VuGen) 2. Controller 3. Analysis

提示:

python 1. VuGen:脚本生成器-脚本录制、编辑 2. Controller:控制器-设计场景、运行、监控 3. Analysis:测试结果分析

三、 理解LoadRunner的三大工具(扩展)

为了更好的理解LoadRunner性能测试三大工具作用,我们先回顾下不使用测试工具时,如果进行性能测试...

需求:

python 软件系统支持100人同时登录

实施:

python 1. 找100个员工及100台电脑,每个员工注册账号OK,环境OK,输入账号、密码完成...鼠标放到登录按钮上; 2. 领导拿个大喇叭,高喊:1...2...3 3. 相关人员统计平均登录时间及登录前、登陆后的服务器CPU、内存等使用情况

LoadRunner的执行原理:【重点】

python 1. VuGen:相当于打开登录页面、输入账号、输入密码、点击登录 2. Controller:手拿大喇叭的领导... 3. Analysis:相当与各个统计数据的相关人员

未完待续, 同学们请等待下一期

全套笔记资料代码移步: 前往gitee仓库查看

感兴趣的小伙伴可以自取哦,欢迎大家点赞转发~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/273327.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【MATLAB第100期】基于MATLAB的多种改进拉丁超立方LHS数据抽样方法

【MATLAB第100期】基于MATLAB的多种改进拉丁超立方LHS数据抽样方法 一、LHS种类 1、LHS 使用随机搜索生成拉丁超立方体样本。LHS函数特别适用于非常大的设计,当本机MATLAB函数内存不足时。这可能取决于MATLAB版本和所用机器的配置。当尝试运行“lhsdesign”但未成…

springboot实现国际化

引言 今天在开发过程中,遇到国外客户,要求项目一些返回msg中,不能再有中文,于是便有了国际化需求。 How to do 1.在项目resources下创建i18n文件夹以及messages.properties文件 messages.properties 国际化主文件 phoneErr.ms…

Guiding Large Language Models viaDirectional Stimulus Prompting

1. 通过定向刺激提示指导大语言模型 论文地址:[2302.11520] Guiding Large Language Models via Directional Stimulus Prompting (arxiv.org) 源码地址:GitHub - Leezekun/Directional-Stimulus-Prompting: [NeurIPS 2023] Codebase for the paper: &qu…

C语言——函数指针——函数指针数组 (详解)

函数指针数组 函数指针数组的作用 函数指针数组是一个数组,其中的每个元素都是一个函数指针。函数指针是指向函数的指针变量,可以用来调用相应的函数。函数指针数组的作用是可以根据需要动态地选择并调用不同的函数。 函数指针数组的使用场景有很多&…

站库分离技术--反向代理技术-雷池云WAF-给自己搭建一个安全点的网站

文章目录 概要整体架构流程技术名词解释技术细节ssh-ubuntu服务器docker-映射-链接-通信nginx反代mysql设置数据库新密码 小结我的mysql映射目录我的wordpress映射目录 成果展示 概要 新买了一个云服务器,想搭建一个站库分离的wordpress为主的网站,采用d…

docker容器的数据卷

1配置数据卷 docker run --namen01 -d --restartalways -p 80:80 -v /qy172/data/nginx/html:/usr/share/nginx/html nginx 2Docker应用部署 1搜索mysql镜像 docker search mysql 2拉取mysql镜像 docker pull mysql:5.6 3创建容器, 设置端口映射、目录映射 d…

每日一题leetcode第2834:找出美丽数组的最小和

目录 一.题目描述 二.思路及优化 三.C代码 一.题目描述 二.思路及优化 首先我们看到这个题,就是根据给出的数组元素个数N,从[1,N]找出N个元素,使得N个元素的和最小,其中随便抽两个数出来,两个数之和不能为…

Vue前端的工作需求

加油&#xff0c;新时代打工人&#xff01; 需求&#xff1a; 实现带树形结构的表格&#xff0c;父数据显示新增下级&#xff0c;和父子都显示编辑。 技术&#xff1a; Vue3 Element Plus <template><div><el-table:data"tableData"style"width…

基于斑翠鸟优化算法(Pied Kingfisher Optimizer ,PKO)的无人机三维路径规划(MATLAB)

一、无人机路径规划模型介绍 二、算法介绍 斑翠鸟优化算法&#xff08;Pied Kingfisher Optimizer ,PKO&#xff09;&#xff0c;是由Abdelazim Hussien于2024年提出的一种基于群体的新型元启发式算法&#xff0c;它从自然界中观察到的斑翠鸟独特的狩猎行为和共生关系中汲取灵…

Python刘诗诗

写在前面 刘诗诗在电视剧《一念关山》中饰演了女主角任如意&#xff0c;这是一个极具魅力的女性角色&#xff0c;她既是一位有着高超武艺和智慧的女侠士&#xff0c;也曾经是安国朱衣卫前左使&#xff0c;身怀绝技且性格坚韧不屈。剧中&#xff0c;任如意因不满于朱衣卫的暴行…

Spring Boot 中使用 Redis + Aop 进行限流

Spring Boot 中使用 Redis 进行限流&#xff0c;通常你可以采用如下几种方式&#xff1a; 令牌桶算法&#xff08;Token Bucket&#xff09;漏桶算法&#xff08;Leaky Bucket&#xff09;固定窗口计数器&#xff08;Fixed Window Counter&#xff09;滑动日志窗口&#xff08…

突破编程_前端_JS编程实例(目录导航)

1 开发目标 目录导航组件旨在提供一个滚动目录导航功能&#xff0c;使得用户可以方便地通过点击目录条目快速定位到对应的内容标题位置&#xff0c;同时也能够随着滚动条的移动动态显示当前位置在目录中的位置&#xff1a; 2 详细需求 2.1 标题提取与目录生成 组件需要能够自…

CSS 居中对齐 (水平居中 )

水平居中 1.文本居中对齐 内联元素&#xff08;给容器添加样式&#xff09; 限制条件&#xff1a;仅用于内联元素 display:inline 和 display: inline-block; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><…

计算机视觉——P2PNet基于点估计的人群计数原理与C++模型推理

简介 人群计数是计算机视觉领域的一个核心任务&#xff0c;旨在估算静止图像或视频帧中的行人数量。在过去几十年中&#xff0c;研究人员在这个领域投入了大量的精力&#xff0c;并在提高现有主流基准数据集性能方面取得了显著进展。然而&#xff0c;训练卷积神经网络需要大规…

转移表回调函数实现

回调函数实现 计算器的模拟&#xff08;函数指针数组的使用&#xff09;&#xff08;回调函数&#xff09; 简化 冗余 老的代码的问题就是 冗余 写死 不能完成不同的任务 函数调用的时候只需要知道地址就可以 calc计算器 这里也称之为转移表 #define _CRT_SECURE_NO_WAR…

基于鹦鹉优化算法(Parrot optimizer,PO)的无人机三维路径规划(提供MATLAB代码)

一、无人机路径规划模型介绍 无人机三维路径规划是指在三维空间中为无人机规划一条合理的飞行路径&#xff0c;使其能够安全、高效地完成任务。路径规划是无人机自主飞行的关键技术之一&#xff0c;它可以通过算法和模型来确定无人机的航迹&#xff0c;以避开障碍物、优化飞行…

Cisco Packet Tracer 模拟器实现一些交换机的基本配置

1. 内容 应用Cisco Packet Tracer 5.3搭建网络 应用Cisco Packet Tracer 5.3配置网络 通过不同的命令实现交换机的基本配置&#xff0c;包括交换机的各种配置模式、交换机的基本配置、交换机的端口配置。 2. 过程 2.1 打开软件 安装模拟器后打开如下&#xff1a; 图1 安装并…

Intel® Extension for PyTorch*详细安装教程

最近在研究Intel的pytorch的加速拓展Intel Extension for PyTorch*,但是发现官网的文档全是英文的&#xff0c;不太好找安装教程。所以特此分享Intel Extension for PyTorch*的详细安装教程。 文章目录 一、安装所需系统要求1.1 硬件需求1.2 软件需求 二、准备2.1 安装驱动程序…

基于冠豪猪优化算法(Crested Porcupine Optimizer,CPO)的无人机三维路径规划(MATLAB)

一、无人机路径规划模型介绍 无人机三维路径规划是指在三维空间中为无人机规划一条合理的飞行路径&#xff0c;使其能够安全、高效地完成任务。路径规划是无人机自主飞行的关键技术之一&#xff0c;它可以通过算法和模型来确定无人机的航迹&#xff0c;以避开障碍物、优化飞行…

基于pytorch的视觉变换器-Vision Transformer(ViT)的介绍与应用

近年来&#xff0c;计算机视觉领域因变换器模型的出现而发生了革命性变化。最初为自然语言处理任务设计的变换器&#xff0c;在捕捉视觉数据的空间依赖性方面也显示出了惊人的能力。视觉变换器&#xff08;Vision Transformer&#xff0c;简称ViT&#xff09;就是这种变革的一个…