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

测试用例介绍

文章目录

  • 一、测试用例基本概念
    • 1.1 测试用例基本要素
  • 二、测试用例的设计方法
    • 2.1 基于需求的设计方法
    • 2.2 等价类
    • 2.3 边界值
    • 2.4 错误猜测法
    • 2.6 场景设计法
    • 2.7 因果图
    • 2.5 正交排列
  • 三、综合:根据某个场景去设计测试用例(万能公式)
  • 四、如何使用Fidder操作网络(测网速)
  • 五、测试接口

一、测试用例基本概念

1.1 测试用例基本要素

  1. 基本要素:测试环境、操作步骤、测试数据、预期结果等
    • 不是说就上面这四个,只是说只知道这几个也行
  2. 测试用例的用处
    • 可作为测试执行者的依据辅助测试
    • 可作为自动化测试的基础,把重复的工作简化
    • 评估需求覆盖率
      • 覆盖率:用来计算测试的代码范围
        • 计算公式:测试的代码行数/没有测试的代码行数
        • 可由工具辅助计算
    • 用例的复用:当要更新一个软件时(由v1变为v2),在git操作上,我们会在v1基础上创建一个dev分支,然后在该分支上迭代其为v2代码,最后合并到master分支上。对于测试用例而言,我们需要写v2新功能的测试用例,至于v1的老功能可以复用v1时的测试用例
      • 为什么还需要测试v1的代码:因为我们无法保证开发人员在开发v2时,没有更改v1的代码,或者说新功能不会影响到老功能

二、测试用例的设计方法

这些设计方法都是针对【黑盒测试】的

2.1 基于需求的设计方法

  1. 根据需求来设计测试用例:设计出来的测试用例只是大概的,测试出来的软件也是不完善的。但不可以没有,因为它相当于是测试软件的思路,如果直接用什么等价类、边界值这种具体设计测试用例的方法,只会让人觉得很没有逻辑
    在这里插入图片描述

2.2 等价类

  1. 分类:等价类主要分为【有效等价类】和【无效等价类】
    • 有效等价类:满足用户需求的数据集合,使用这些数据,程序不会报错
    • 无效等价类:不满足用户需求的数据集合,使用这些数据,程序会报错
  2. 如何通过等价类设计测试用例
    • 充分理解需求
    • 将需求划分为【有效等价类】和【无效等价类】
    • 分别从【有效等价类】和【无效等价类】中抽取一个测试用例进行测试,只要被抽取的那个测试用例能够通过,则认为所代表的等价类测试通过
      • 理解:吃东西我们只要吃一口,就可以判断这道菜好不好吃了。此时,那一口就是被提出来的测试用例,整道菜就是该测试用例代表的等价类
    • 组合有效等价类和无效等价类
      • 组合规则
        • 有效等价类:一条测试用例尽可能的覆盖所有有效等价类
        • 无效等价类:一条无效等价类与其他的有效等价类
  3. 好处:可以用较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题
  4. 案例

在这里插入图片描述

在这里插入图片描述

2.3 边界值

  1. 场景:因为边界情况很容易出bug,所以我们要多测试
  2. 上点、离点、内点
    • 上点:对于开区间、闭区间、半开半闭区间来说,上点都是边界上的点
    • 离点:对于开区间、闭区间、半开半闭区间来说,离点都是边界内的点
    • 内点:边界左右的一个点,如果是闭区间,离点是范围外的点;如果是开区间,离点就是范围内的点
      在这里插入图片描述
  3. 使用边界值法设计测试用例
    • 充分理解需求
    • 找上点、内点、离点
    • 针对上面这三点,结合等价类法去设计测试用例
  4. 案例
    在这里插入图片描述

2.4 错误猜测法

  1. 什么是“错误猜测法”:这个方法基本靠测试经验,测试人员根据经验猜测大概哪种情况下容易出错
  2. 缺点:难以系统化,并且过度依赖个人能力

2.6 场景设计法

  1. 如何利用场景设计法设计测试用例
    • 定位主事件流:主事件流就是用户经常操作的步骤、行为,是个大模块
    • 定位次事件流:主事件流里面,大都都会有很多意外
    • 将上述两个事件流串起来形成场景:此时一个场景就是一个测试用例
  2. 案例
    在这里插入图片描述

2.7 因果图

  1. 为什么会有因果法:输入的数据也是有逻辑关系的,如输入的两个条件必须要同时满足才能通过测试,我们可以根据这个逻辑,去设计测试用例

  2. 因果图VS判定表法:因为因果图最终会转为判定表,所以这里干脆从【判定表】的部分讲,跳过中间部分,所以实际我们要学的其实是【判定表法】

  3. 逻辑关系种类

    • 恒等:条件为真,结果一定为真;条件为假,结果一定为假
    • :条件全为真,结果才为真
    • :条件全为假,结果才为假
    • :条件为假,结果才为真
  4. 如何根据判定表法设计测试用例

    • 充分理解需求
    • 分析所有可能的输入和输出
    • 找出输入和输出的对应关系
    • 判定表
    • 把判定表对应到每一个测试用例上
  5. 案例
    在这里插入图片描述

  6. 缺陷:如果输入和输出十分复杂,制作判定表就十分麻烦,此时我们可以借助【正交表法】进行优化

2.5 正交排列

  1. 名词解析
    在这里插入图片描述

  2. 正交表性质
    在这里插入图片描述

  3. 如何根据正交表法设计测试用例:通常是需要工具辅助我们生成一个正交表

    • 确定因素(变量)
    • 确定因素取值(水平)
    • 通过工具生成正交表
    • 将正交表转换成测试用例
    • 补充正交表
  4. 案例
    在这里插入图片描述

三、综合:根据某个场景去设计测试用例(万能公式)

  1. 设计思路:实际测试,我们不会专门去使用上面那些设计方法,而是使用【万能公式】
  2. 万能公式:功能、界面、易用性、兼容性、安全性、性能、网络
    • 针对一个【物体】进行设计
      • 功能:这个物体经常被用来干什么
      • 界面:物体的形状、颜色、大小……
      • 易用性:物体的设计符合人体工学
      • 兼容性:该物体除了本质功能,还可以做哪些事情
      • 安全性:物体不能对人的健康有损害
      • 性能:承受能力,如抗压力、耐热力、耐寒力等
    • 针对一个【软件】进行设计
      • 功能:软件的基础功能(本职功能)是什么

      • 界面:界面的图片布局、图片大小、按钮颜色、文字字体……

      • 易用性:软件设计符合大众操作习惯,能让人操作流畅

        • 比如如果报警一般是红色日志,绿色一般表示通过,黄色则一般表示警告
      • 兼容性:软件可以在不同的平台去部署、运行

        • 兼容对软件十分重要,因为不同的用户会用不同的设备去使用该软件
        • 考虑到不同的设备(IOS、Android、PC)、以及对应的不同的版本(比如浏览器的版本、操作系统的版本……)
          • 苹果手机和苹果电脑的操作系统就是IOS,PC主要指电脑端,电脑的操作系统有Windows、Linux、Mac
        • 因为测试兼容多是重复性操作,所以我们可以用【自动化】来帮助我们提高测试的效率
      • 安全性:使用功能时,要防止黑客攻击,没有内存泄漏、SQL注入、xss漏洞等问题

        • xss漏洞:如果在输入框输入< script>代码< /script>,如果存在xss漏洞,程序就会执行里面的代码,如果代码涉及金钱,就会十分危险。如果没有,则是正常显示这段话
        • SQL注入:主要是字符串拼接问题,如数据库代码是select * from list where id = 10 or 1 = 1, 但是输入框输入的是xxx or 1 = 1,此时会搜出全部的数据
      • 性能:吞吐量(软件能够同时间承载多少个用户访问)、响应时间(软件渲染页面所需的时间)……
        在这里插入图片描述

      • 网络:在不同网速下能否正常运行

  3. 设计水杯的测试用例:利用万能公式有逻辑地求解,而不是想到什么测试点就说什么,每个部分至少能说出3,4个点
    • 注意:如果是大需求,就把其拆为小需求求解:如果是小需求直接用万能公式
      • 功能:能泡茶、能加热水、能保温、容量为500ml……
      • 兼容:能装酒、能装化学物质、能装饮料……
      • 易用性:便于携带、拿着舒服符合人体工学、水杯重量适中……
      • 安全:水杯的材质不会与水发生化学反应,从而产生有毒物质、杯盖足够紧,加热水时不会漏液……
      • 界面:水杯上的图案美观、图案不会褪色、容量刻度线明显……
      • 性能:防摔、防爆、保温效果好……
  4. 设计【微信发布朋友圈】的测试用例
    • 功能:能发送文本(再细分:能发送纯汉字、能发送纯英文、能结合、如果发送的文本过长超过了100字符,会有提示……)、能发送图片(支持发送9张及以内的图片、如果已经选中了9张图片不能再选中第10张、图片顺序能够调整……)、能发送视频、能进行分享操作……
    • 兼容:对于平板来说,无论是IOS还是Android都能发送(包含了各个版本)、对于PC电脑来说Windows和Mac不能发送朋友圈……
    • 易用性:软件操作流畅、软件操作简单
    • 安全:会自动过滤敏感词、防止SQL注入、防止xss漏洞、防止黑客攻击……
    • 界面:朋友圈页面布局好看、小部件符合大众习惯……
    • 性能:图片渲染时间短、支持大量用户同时发送朋友圈……

四、如何使用Fidder操作网络(测网速)

  1. 概念:Fidder和Charles可以用来控制网络,实现测网速等操作
  2. 方法
    在这里插入图片描述
    在这里插入图片描述

五、测试接口

  1. 测试方式:可以使用代码测试,也可以使用可视化工具postman测试
  2. 测试方向
    • 针对接口方法测试:post、get、put、delete……(注,get方法里不能用post)
    • 针对参数测试:选取符合要求和不符合要求的参数,分别进行测试,如参数的个数、参数为空……
    • 针对业务测试:根据返回结果,判断业务是否正确
      在这里插入图片描述

相关文章:

测试用例介绍

文章目录 一、测试用例基本概念1.1 测试用例基本要素 二、测试用例的设计方法2.1 基于需求的设计方法2.2 等价类2.3 边界值2.4 错误猜测法2.6 场景设计法2.7 因果图2.5 正交排列 三、综合&#xff1a;根据某个场景去设计测试用例&#xff08;万能公式&#xff09;四、如何使用F…...

Vue 2 中 Vue 实例对象(vm)的所有核心方法,包含完整示例、使用说明及对比表格

以下是 Vue 2 中 Vue 实例对象&#xff08;vm&#xff09;的所有核心方法&#xff0c;包含完整示例、使用说明及对比表格&#xff1a; 1. $mount() 作用&#xff1a;手动挂载 Vue 实例到 DOM 元素 参数&#xff1a; element&#xff1a;DOM 元素或选择器字符串&#xff08;可…...

大模型的scaling laws:Scaling Laws for Neural Language Models

一、TL&#xff1b;DR Loss与模型size、数据集大小以及用于训练的计算量呈幂律关系其他架构细节&#xff0c;如网络宽度或深度&#xff0c;在较宽范围内影响极小简单的公式可以描述过拟合与模型/数据集大小的依赖关系&#xff0c;以及训练速度与模型大小的依赖关系作用&#x…...

【Docker】使用 jq 管理镜像源

国内访问 Docker Hub 速度较慢&#xff0c;通过配置国内镜像加速器&#xff0c;可显著加快拉取镜像速度。使用 jq 操作 /etc/docker/daemon.json 的 registry-mirrors 字段&#xff0c;可避免手动编辑带来的格式错误&#xff0c;并在添加、替换、删除等场景下保持高效与安全。 …...

青年座谈会的读书汇报

今天&#xff0c;单位组织了一个五四青年座谈会&#xff0c;我们室由于大家都在出差忙之类的&#xff0c;我必须要参加&#xff0c;还要我做一个汇报&#xff0c;我一新来的还没深入到研发工作中&#xff0c;于是决定写了一篇简单的读书笔记&#xff0c;再用deepseek润色一下&a…...

leetcode刷题日记——两数相加

[ 题目描述 ]&#xff1a; [ 思路 ]&#xff1a; 通过两个循环将 l1, l2存储的数字读出&#xff0c;然后求和&#xff0c;再将结果存储链表中由此发了一个问题&#xff0c;结果溢出&#xff0c;如果使用更大的 long 类型&#xff0c;后续不出所料&#xff0c;仍然超出所以只能…...

使用腾讯地图检索地点

最近需求又多了&#xff0c;现在需要使用腾讯地图检索功能&#xff0c;需要经纬度返给商户后端 效果图&#xff1a; 把地图写成组件 现在components创建map/Getpoint.vue 代码如下 <template><div class"getpoint-container"><div><div id&…...

VINS-FUSION:跑通手机录制数据

文章目录 &#x1f4da;简介&#x1f680;手机录制数据&#x1f680;跑通数据&#x1f527;启动rviz&#x1f527;启动配置&#x1f527;播放rosbag&#x1f3af;跑通结果 &#x1f4da;简介 利用智能手机的 摄像头IMU 采集数据&#xff0c;并在 VINS-Fusion&#xff08;视觉惯…...

iView Table 组件跨页选择功能实现文档

iView Table 组件跨页选择功能实现文档 功能概述 实现基于 iView Table 组件的多选功能&#xff0c;支持以下特性&#xff1a; ✅ 跨页数据持久化选择✅ 当前页全选/取消全选✅ 自动同步选中状态显示✅ 分页切换状态保持✅ 高性能大数据量支持 实现方案 技术栈 iView UI 4…...

Spark知识总结

宽窄依赖&#xff1a;父RDD的分区只对应下面子RDD的一个分区&#xff0c;为窄依赖。其余为宽依赖 维度‌‌窄依赖‌‌宽依赖‌数据传输无shuffle&#xff0c;本地处理14需shuffle&#xff0c;跨节点传输14并行度高&#xff08;允许流水线并行&#xff09;57低&#xff08;需等…...

window 图形显示驱动-在 WDDM 1.2 中提供无缝状态转换(下)

在不禁用驱动程序的情况下转换到操作系统 有时操作系统遇到不可恢复的错误&#xff0c;必须发出系统 bug 检查。 发生这种情况时&#xff0c;在某些情况下&#xff0c;操作系统必须控制显示器&#xff0c;但无法停止 WDDM 驱动程序。 需要 WDDM 1.2 及更高版本的驱动程序来实现…...

WPF之Label控件详解

文章目录 1. 引言2. Label控件基础2.1 类继承结构2.2 Label类定义 3. Label控件的核心属性3.1 Content属性3.2 Target属性3.3 其他常用属性 4. 标签样式与模板自定义4.1 简单样式设置4.2 使用Style对象4.3 触发器使用4.4 使用ControlTemplate完全自定义 5. Label与表单控件交互…...

STM32 HAL库实现USB虚拟串口

1. 引言 在嵌入式系统开发中&#xff0c;USB 虚拟串口是一种非常实用的功能。它允许 STM32 微控制器通过 USB 接口与计算机进行通信&#xff0c;就像使用传统的串口一样。这种方式不仅简化了硬件设计&#xff0c;还提高了通信的灵活性和稳定性。STM32F407 系列微控制器具有强大…...

第二阶段:基础加强阶段总体介绍

Java语法的学习笔记 下面放复习的文档链接&#xff0c;如果有需要可以前往下载获取&#xff0c;这个仓库还有关于mysql、hadoop、python等的复习部分&#xff0c;并且每个文档有着对应的代码部分。文章作为复习使用&#xff0c;更多代码内容见链接如下: https://gitee.com/zha…...

Callable Future 实现多线程按照顺序上传文件

/** * 异步上传 BiopsyFlow 中的所有视频和音频文件到暂存服务器 */ private List<String> uploadBiopsyFlowFiles(BiopsyFlow biopsyFlow, SyncFile SyncFile) { List<String> fileBase64List syncFile.getFileBase64List(); if (CollectionUtils.is…...

leetcode283-移动零

leetcode 283 思路 本题是通过把数组中所有不为0的数字前置&#xff0c;实现把所有的0后置的效果 双指针法 slow 充当指针&#xff0c;记录当前零应该被移到的位置。而 i 用来遍历整个数组&#xff0c;检查每个元素。如果当前元素不为零&#xff0c;就将其与 slow 位置上的…...

【dify+docker安装教程】

目录 一、dify安装包下载 二、运行环境配置 1、下载docker 2、安装 2.1 新建文件夹 2.2 安装 2.3 命令安装 3.下载完成后需要重启电脑&#xff0c;注意保存文档&#xff01;&#xff01;注意保存&#xff01;&#xff01;注意&#xff01;&#xff01;&#xff08;血的教…...

GPU虚拟化实现(五)

GPU虚拟化实现(五) 章节回顾初步介绍详细介绍核心数据结构核心功能和运作机制初始化显存分配显存释放显存溢出检查显存类型检查查看分配信息代码执行流程假设例子总结章节回顾 在上一章,简单介绍了项目拦截cuda函数的流程,其本质上与拦截nvml函数的流程是一致的,都是首先…...

C++——入门基础

文章目录 一、前言二、C的发展历史2.1 C的诞生2.2 C的重要性 三、C的应用3.1第一个C程序3.2 C版3.2 C版3.3 C版与C版的区分 3.2 namespace关键字3.2.1 namespace的意义3.2.2C中域的分类3.2.3 namespace的定义3.2.4 namespace的实质3.2.5 namespace的嵌套 3.3 作用域运算符 &…...

AT2401C与RFX2401C问题处理资料

1、AT2401C 可以 PIN 对 PIN 替代 RFX2401C 吗&#xff1f; 答&#xff1a;AT2401C 可以 PIN 对 PIN 替换 RFX2401C&#xff1b;同时 CB2401 也可以 PIN 对 PIN 替换 RFX2401C&#xff1b;我们主要推 AT2401C 这款芯片&#xff0c;如果客户产 品需要过认证或者应用于音频产品建…...

微信小程序连续多个特殊字符自动换行解决方法

效果图 .wxml <view class"container"><text>没转换{{text}}</text><view style"height: 60rpx;" /><text>转换后{{convert}}</text> </view>.js Page({data: {text:&#xff01;&#xff01;&#xff01;&am…...

【Linux实践系列】:进程间通信:万字详解命名管道实现通信

&#x1f525; 本文专栏&#xff1a;Linux Linux实践项目 &#x1f338;作者主页&#xff1a;努力努力再努力wz &#x1f4aa; 今日博客励志语录&#xff1a; 与其等待完美的风&#xff0c;不如学会在逆风中调整帆的角度——所有伟大航程都始于此刻出发的勇气 ★★★ 本文前置知…...

【TS入门笔记4---装饰器】

TS入门笔记4 TypeScript---装饰器一、装饰器基础1. 定义与作用&#xff1a;装饰器是一种特殊类型的声明&#xff0c;它可以被附加到类声明、方法、访问符、属性或参数上&#xff0c;用来修改类的行为。在 TypeScript 里&#xff0c;装饰器本质上是一个函数&#xff0c;它接收不…...

大学之大:韩国科学技术研究院2025.4.28

韩国科学技术研究院&#xff08;KAIST&#xff09;作为韩国理工科教育与科研的旗舰机构&#xff0c;其发展历程深刻反映了韩国从工业化到科技强国的转型轨迹。以下从历史沿革、学科优势、教学特色、科研创新、教育规模、资源投入及未来战略等维度展开全面分析&#xff1a; 一、…...

【QT】QT控制硬件

QT控制硬件 1.上位机程序开发2.具体例子控制led灯3. linux中的函数跟QT类里面的函数同名&#xff0c;发生冲突4.示例代码 1.上位机程序开发 QT做一个上位机程序&#xff0c;控制底层的硬件设备(下位机) 总结&#xff1a; 在构造函数里面去初始化&#xff0c;打开硬件驱动在析…...

Spring的BeanFactory和FactoryBean的区别

​ ‌BeanFactory和FactoryBean在Spring框架中扮演着不同的角色&#xff0c;具有不同的功能和用途。‌ 定义与角色 ‌BeanFactory‌&#xff1a;BeanFactory是Spring IoC容器的核心接口&#xff0c;用于管理和维护Bean的定义、创建和生命周期。它是Spring IoC容器的基础&…...

【JavaScript】if语句

JS中的程序是从上到下一行一行执行的。 通过流程控制语句可以控制程序执行流程&#xff0c;使程序可以根据一定的条件来选择执行语句。 语句的分类&#xff1a; 1、条件判断语句 2、条件分支语句 3、循环语句 条件判断语句&#xff1a;使用条件判断语句可以在执行某个语句之前进…...

PostgreSQL oracle_fdw 扩展解析

PostgreSQL oracle_fdw 扩展解析 oracle_fdw 是 PostgreSQL 的一个外部数据包装器(Foreign Data Wrapper)扩展&#xff0c;允许 PostgreSQL 直接连接和操作 Oracle 数据库。以下是全面详细的使用指南&#xff1a; 一、安装与配置 1. 前置要求 Oracle 客户端库&#xff1a;必…...

从信息传输到智能互动,融云的全球智能通信云服务进化

4 月 24 日-25 日&#xff0c;GTC2025 全球流量大会在深圳福田会展中心举办&#xff0c;融云携全球智能通信云解决方案亮相。 在大会首日的开幕式峰会上&#xff0c;融云高级研发总监李宏博受邀分享《从信息传输到智能互动&#xff0c;融云的全球智能通信云服务进化》。 作为连…...

关于https请求丢字符串导致收到报文解密失败问题

加密方法&#xff1a;AES两次URLEncoder 问题现象&#xff1a;服务端收到的报文中少了类似%25这样的字符&#xff0c;导致解密失败 问题分析&#xff1a;用RequestBody接受 也有可能是springboot自动做了一次解码URLDecoder&#xff0c;自己只需要解码一次就好了...

Rust 学习笔记:修复所有权常见错误

Rust 学习笔记&#xff1a;修复所有权常见错误 Rust 学习笔记&#xff1a;修复所有权常见错误错误一&#xff1a;返回栈上的引用错误二&#xff1a;没有足够的权限错误三&#xff1a;别名和可变性错误四&#xff1a;从集合中拷贝一个元素&#xff08;转移所有权&#xff09;错误…...

Unity3D引擎框架及用户接口调用方式相关分析及汇总

分析目的 目前外网3D手游绝大部基于Unity3D引擎进行开发,Unity3D引擎属于商业引擎,引擎整理框架的运行机制较为神秘,本文介绍Unity引擎框架、对象组织方式、用户接口与引擎交互方式等原理,通过本文的分析和介绍可了解Unity3D框架中大致执行原理。 实现原理 Unity引擎作为…...

喷泉码在物联网场景下的案例分析

在物联网复杂场景下,无线传感器网络作为信息感知前端,面临能量受限、信道不稳定、多跳传输可靠性差等难题,严重制约物联网系统运行效能。传统基于反馈重传的通信机制在无线传感器网络中难以为继。其 ACK 确认操作频繁,大幅增加能耗,且在动态网络拓扑中,反馈易丢失,致使数…...

OpenCV 图形API(69)图像与通道拼接函数------将一个 GMat 类型的对象转换为另一个具有不同深度GMat对象函数convertTo()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 将一个矩阵转换为另一种数据深度&#xff0c;并可选择进行缩放。 该方法将源像素值转换为目标数据深度。最终应用 saturate_cast<> 以避免…...

考研系列-计算机组成原理第七章、输入/输出系统

一、I/O接口 1.I/O接口概念 现在的I/O接口有些集成在南桥芯片上...

使用vue3 脚手架创建项目

1.创建项目 并 运行 1.1 创建项目 vue create abcd 1.2 运行 创建好项目后&#xff0c;命令行会提示你运行项目 npm run serve 2.介绍各个目录 node_modules : 项目依赖包&#xff0c;其中包括很多基础依赖&#xff0c;自己也可以根据需要安装其他依赖 assets文件夹&a…...

云服务器被黑客攻击应急响应与加固指南(上)

一、入侵检测与应急处理 1. 异常行为检测 # 查看异常登录记录 sudo lastb | awk {print $3} | sort | uniq -c | sort -nr sudo grep "Failed password" /var/log/auth.log | awk {print $11} | sort | uniq -c# 检查可疑进程 ps auxf | grep -E (curl|wget|bash|s…...

联合体union的特殊之处

一个联合体union的长度等于其内部长度最大的成员的长度。 union的所有成员共享同一块内存空间&#xff0c;可以利用这个特性读取数据的字节存储方式。 #include <stdio.h>int check_endian() {union {short s; // 2 字节&#xff08;short&#xff09;char c[2]…...

Spring系列五:手动实现Spring底层机制 第三部分

&#x1f497;实现任务阶段5 &#x1f35a;bean后置处理器实现 bean后置处理器实现 思路:先完成原生Spring 使用Bean后置处理器的案例, 然后实现自己的bean后置处理器 bean的生命周期~传送门 在idea中 shortcuts: shiftshift , 输入 InitializingBean, 搜索. 在zzw-spring…...

AGV、AMR机器人控制器x86/RK3588/NV各有什么优劣势?

以下是关于AGV/AMR机器人控制器解决方案中x86、RK&#xff08;瑞芯微&#xff09;、NV&#xff08;英伟达&#xff09;平台优劣势的综合分析&#xff1a; 一、核心性能对比 平台优势局限性适用场景‌x86‌1. 多核高频CPU支持复杂算法运算&#xff0c;适合大规模路径规划及多机…...

[ACTF2020 新生赛]Include [ACTF2020 新生赛]Exec

[ACTF2020 新生赛]Include 因为前端过滤的太多了 所以直接使用 日志包含 搞 包含这个 /var/log/nginx/access.log [ACTF2020 新生赛]Include蚁剑连接 翻看 flag{1ce7a81e-0339-44ef-a398-a7784d3efe37} [ACTF2020 新生赛]Exec [ACTF2020 新生赛]Exec 127.0.0.1 |echo <?…...

23种设计模式 -- 工厂模式

Java 工厂模式示例代码 下面我将展示三种常见的工厂模式实现&#xff1a;简单工厂模式、工厂方法模式和抽象工厂模式。 1. 简单工厂模式 java // 产品接口 interface Shape {void draw(); }// 具体产品类 class Circle implements Shape {Overridepublic void draw() {System…...

【25软考网工】第四章(2)WLAN通信技术、WLAN频谱与信道

目录 一、WLAN通信技术 1. 扩展频谱通信 1&#xff09;扩频通信种类 2&#xff09;技术关系 2. 应用案例 1&#xff09;例题:扩频通信概念判定 2&#xff09;例题:跳频扩频技术描述 3&#xff09;例题:扩频通信技术标准 3.知识小结 二、WLAN频谱与信道 1. WLAN网络分…...

MetaEditor - 自动交易和技术指标编辑器

功能特点 代码编辑功能&#xff1a;支持多种编程语言&#xff0c;如 MQL4 和 MQL5&#xff0c;方便交易者根据自己的需求编写自动交易策略和技术指标。它提供了代码高亮、自动缩进、语法检查等功能&#xff0c;有助于提高代码编写的效率和准确性。调试与测试工具&#xff1a;配…...

关于华为云OneAccess登录认证过程介绍

这里主要介绍的是OAuth2认证的一个流程&#xff0c;分享一下实际开发过程中的实现逻辑 1、后端先根据接口文档的细节内容&#xff0c;然后拼接好url并且以String的类型返回给前端 2、此时前端会访问本连接&#xff0c;然后就会跳转到第三方页面&#xff0c;用户进行登录后&am…...

Spring - 简单实现一个 Spring 应用

一、为什么需要学习Spring框架&#xff1f; 1.企业级开发标配 超过60%的Java项目都使用Spring生态&#xff08;数据来源&#xff1a;JetBrains开发者报告&#xff09;。 2.简化复杂问题 通过IoC和DI&#xff0c;告别new关键字满天飞的代码。 3.职业竞争力 几乎所有Java岗…...

数据展示功能界面设计与实现及终端控制界面思路(17)

文章目录 一、本章说明二、传感数据展示功能实现2.1 实现目标2.2 具体实现2.2.1 需要在.pro 文件添加2.2.2 mainwindow.h 头文件2.2.3 mainwindow.cpp 文件2.2.4 实现界面展示三、项目源码文件四、终端节点控制五、Qt打包EXE一、本章说明 注:本节为【基于STM的环境监测系统(…...

opendds编译开发(c#封装)

opendds是对DDS协议的开源实现&#xff0c;具体可以查阅官网。 我使用的是源码编译开发&#xff0c;博文只针对windows平台。 环境准备 环境安装 1.visual studio 2022,我是企业版&#xff0c;安装需要选择c 2.Per下载安装,下载链接&#xff1a;https://strawberryperl.com…...

电子监管码预检剔除装置提示盒尺寸过短

问题&#xff1a;电子监管码预检剔除装置提示盒尺寸过短 现象&#xff1a;自动线监控程序报警提示“盒尺寸过短”。 原因&#xff1a;分盒设备拨盒的力度和距离、盒子在传送带的角度或传送带速度有所变化都会导致自动线出现“盒尺寸过短” 解决方法&#xff1a;根据传送带的速…...

【C++11特性】Lambda表达式(匿名函数)

一、函数对象 在C中&#xff0c;我们把所有能当作函数使用的对象当作函数对象。 一般来说&#xff0c;如果我们列出一个对象&#xff0c;而它的后面又跟有由花括号包裹的参数列表&#xff0c;就像fun(arg1, arg2, …)&#xff0c;这个对象就被称为函数对象。函数对象大致可分为…...