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

软件测试面试题-自测

一、测试流程 

1.项目测试流程你是怎么开展的?

①首先,需求分析阶段,分析需求点,需求确定以后进入测试计划阶段,参考需求规格说明书进行测试计划编写

②接着,进入测试设计阶段,依据需求文档及原型图编写测试用例,并进行用例评审

③进入测试执行阶段,需要搭建测试环境,执行冒烟测试之后进入正式测试,并且将测试缺陷进行提交及跟踪,经过多轮回归测试,直到测试版本结束

④最后,进入测试评估阶段,对软件版本质量进行评估,输出测试报告,确认是否上线。

单独负责一个项目,需 要注意什么呢?

 (1)首先,评估项目的测试范围盒周期,是否能够单独完成

(2)做好测试策略和计划安排,保证每个环节按时完成

(3)在上手测试前,树立大致的测试点,先做冒烟测试

(4)测试中,尽量通过一些技术手段提升测试效率

(5)项目中,如果碰到解决不了的问题,要及时寻求解决方案

(6)及时对bug进行追踪,推动开发尽快解决bug

(7)把控发布标准,测试报告中标明上线风险

测试文档

测试计划和测试方案的区别?

(1)测试计划是偏管理性质的文档(通俗来说就是解决【谁来做?】【做什么?】的问题),测试方案是偏技术类型的文档(解决【怎么做?】的问题)
(2)测试计划主要包含测试的目的与范围,角色与职责,资源及安排,风险与乐队,测试标准等信息;测试方案主要包含测试方法,测试环境与测试工具等内容

测试计划要素有哪些?

 (1)测试目的(Why)

(2)测试范围(What)

(3)测试时间安排(When)

(4)人员任务分配(Who)

(5)测试环境(Where)

(6)测试方法和策略(How)

测试用例

 编写测试用例的流程

(1)熟悉并分析项目业务需求

(2)依据功能模块划分,使用等价类、边界值等黑盒测试方法进行用例设计,先整理功能正常的用例,再进行每一个操作的异常用例的覆盖,补充业务约束,功能交互项,数据验证项等

(3)每个功能模块分别写完用例以后,从项目的业务流程考虑,是否都进行了用例的覆盖

(4)编写完成后,提交评审

测试方法

你知道白盒测试么? 有哪些白盒测 试的方法?

(1)白盒测试是基于代码的测试

(2)方法:语句覆盖,判定覆盖,条件覆盖,条件判定覆盖,条件组合覆盖,路径覆盖

协议 

常见的 HTTP 接口请求方法有哪些

 (1)GET:获取数据和资源

(2)POST:发送数据给服务器,创建或者更新资源

(3)PUT请求:用来创建或者替换目标资源

(4)PATCH,对资源进行部分修改

(5)DELET,删除资源

http https 协议的区别?

 (1)安全性:HTTP明文传输,易受攻击,HTTPS安全性更高

(2)端口:HTTP:80,HTTPS:443

(3)灵活性:HTTP简单快速,https门槛较高

OSI 七层模型有哪些层以及有哪些代表协议?

(1)应用层:网络服务于用户的一个接口
(2)表示层:数据的表示
(3)会话层:建立、管理、终止会话
(4)传输层:定义传输数据的协议端口号
(5)网络层:进行逻辑地址寻找,实现不同网络之间的路径选择
(6)数据链路层:建立逻辑连接,进行硬件地址寻址功能
(7)物理层:建立、维护、断开物理连接

说一下 TCP 协议的三次握手过程?

(1)第一次握手:客户端向服务器发起,用来申请建立连接

(2)第二次握手:服务器回复客户端,用来确定并接受连接请求

(3)第三次握手:依旧是客户端发给服务器,用来确认服务器的回复消息

说一下 TCP 协议的 4 次挥手过程

 (1)第一次挥手:客户端向服务器发起,用来申请断开连接

(2)第二次挥手:服务器回复客户端,用来确定客户端上一个断开连接请求的

(3)第三次挥手:服务器 发给客户端,告知客户端服务器的数据发送完毕了,需要断开连接

(4)第四次挥手,客户端回复服务器,确认服务器的上一个断开连接请求

在浏览器中输入一个网页会发生什么?

(1)进行DNS域名解析
(2)建立TCP连接,发起三次握手
(3)发送一个HTTP请求
(4)服务器处理相关的请求并返回处理后的结果
(5)关闭TCP连接
(6)浏览器接受到服务器处理后的结果后,开始解析
(7)浏览器将解析后的资源进行请求,并对页面进行渲染展示

TCP 协议和 UDP 协议的区别?

 (1)TCP面向连接,UDP无连接

(2)TCP可靠,能保证数据传输无差错,UDP尽最大努力交付,不可靠

 (3)TCP传输效率较低,UDP效率高,适合注重速度不在意丢包的场景

b/s c/s 架构有什么区别?

 (1)B/S架构:浏览器-服务器,不需要安装客户端,只需要通过浏览器就能访问,升级只需要更新服务器,需要考虑浏览器兼容性

(2)C/S架构:客户端-服务器端,需要安装一个客户端才能使用,需要考虑安装卸载

接口测试

接口测试用例的编写要点有哪些?

①考虑接口的正常使用

②业务约束规则验证:包括鉴权、逻辑约束

③考虑请求参数必填字段:

(1)参数长度边界值验证

(2)类型异常、null

(3)参数名错误、参数个数

(4)参数组合验证

④容错能力,大量数据,频繁请求,重复请求(如订单)

接口测试到底测什么呢?

 (1)考虑接口正常调用

①按照接口定义,传递正确的接口信息,然后查看返回的响应结果和数据库数据是否正确

②传递的请求数据覆盖有效类,边界值

③返回的响应结果的每个字段都需检查

(2)考虑请求参数的错误、异常情况

①请求数据异常值:空值,长度类型异常

②业务约束:订单状态必须确认收货后才能评价

③输入错误的参数名:多一个参数,少一个参数,看接口是否正确处理

(3)安全性测试

①敏感数据,是否加密传输

②返回数据是否含有敏感数据

③接口是否防止恶意请求:如大量伪造请求接口致使服务器崩溃

(4)性能测试

①并发请求相同的接口,查看接口的处理情况

②接口响应时间在用户可接受范围内

③对于业务操纵频繁的接口做压力测试,监控性能资源

做了接口测试,后面还需要进行系统 功能测试吗?

 (1)需要,接口测试主要是为了尽早发现问题提前介入,可以返现页面上发现不了的bug,还可以提高系统的稳定性

(2)虽然接口测试覆盖了所有功能层面的逻辑测试,但跟前端界面进行集成的时候,依然会出现问题,所以我们依旧需要所有功能在前端界面的测试验证

get post 方法有什么区别?

(1)请求参数:get请求参数是放在url里面,长度收到限制,安全性较差,而post请求参数是放在请求体里面的,长度没有限制,安全性相对较高

(2)访问:get请求可以通过浏览器直接访问,支持刷新和后退。post请求,不能直接被浏览器访问,刷新后台需要重新传送

怎么判断一个接口是否有 bug

 (1)先确认自己传参时的接口地址,请求方式,请求头和请求体是否正确

(2)如果正确,查看返回结果和接口文档进行对比,如果一致

(3)则判断数据库中的数据是否有问题

APP 测试和 Web 测试有什么区别?

web测试:B/S架构,通过浏览器访问

App测试: C/S架构,通过客户端操作

(1)系统架构方面,web端,只需要更新服务器;App,服务器端和客户端都需要回归测试一遍

(2)客户端性能方面:web一般只需要关注响应的时间,App还需要关注流量,电量,cpu,内存

(3)兼容性方面:web要考虑不同操作系统下不同主流浏览器的兼容,App要考虑不同产商机型、操作系统、屏幕尺寸分辨率等兼容性问题

小程序测试和 app 测试有什么区别?

(1)安装卸载:
小程序不需要下载安装,不需要卸载;App需要下载并且安装后才能使用,清除时需要卸载

 (2)开发周期

小程序开发周期约2周,发布审核时间较短

App:需要在支持的android和ios平台分别开发,周期较长,审核时间也较长

(3)登录权限

小程序:一般微信登录,无需注册

App:需要注册登录系统,权限方面需要考虑是否可以访问手机通讯录,相册,相机

(4)兼容性

小程序:基于不同的公众平台,主要兼容不同的微信版本

App:考虑不同机型的兼容,分辨率,屏幕尺寸,操作系统等....

如何做 app 兼容性测试的

(1)硬件兼容性:需要覆盖市面上主流手机厂家及各型号的产品

(2)操作系统兼容性:对app安装及卸载测试,测试app能否正常运行

(3)分辨率的兼容性:对主流设备的分辨率及屏幕尺寸,测试app界面实现及排版是否正常

(4)网络兼容性:在不同的运营商下,app是否能够正常运行,需要真机环境进行测试

长连接短连接有什么区别?

(1)长连接(保持连接时间比较长)

一个HTTP连接的建立需要三次握手,握手成功后,才可以建立数据包传输,为了降低握手的频率,在接口请求头部connection为keep-alive,如果一段时间不用,服务器就会主动发一段探测报文,看看连接状态,如果探测不通,服务器端就会主动断开连接

(2)短连接(连接时间很短)

需要的时候才会建立一个tcp连接,数据传输完成就结束

http 协议有哪些响应状态码?

 (1)1xx(临时响应):表示需要请求者继续执行操作

(2)2xx(成功):表示成功

(3)3xx(重定向)

(4)4xx(客户端请求错误)

(5)5xx(服务器错误)

测试实例 

给你一个魔盒可以实现任何愿望,作为 测试怎么设计测试用例

 (1)功能

①说出不同愿望(钱+人+精神需求),看魔盒是否都能实现

②说愿望,只说部分关键字,看是否能正常识别

③不说愿望,看魔盒是否提示人许愿

④是否会有魔盒实现不了的愿望

⑤许愿次数是否有上限

⑥是否有许愿咒语

(2)界面:外表设计是否符合审美要求

(3)兼容:声音大小,是否影响魔盒接受许愿者的愿望

(4)性能:连续多次许愿后,魔盒是否还能正常使用

用户反馈功能很卡,要从哪些方面考 虑?

 (1)功能操作卡

①反馈提交的资源过大,导致请求慢

②服务器对于当前请求的人数过多,导致卡

(2)整个app卡

①网络异常

②app占用内存大,导致手机内存不足

③当前app与其他软件、手机系统不兼容

④服务器资源不足,请求慢

在测试“抖音直播”功能时,可以从以下几个方面进行详细的测试:

功能测试

目的:确保所有功能按照设计要求正常运作。

  • 直播创建:测试用户是否可以成功创建直播,包括设置标题、封面图、分类等。
  • 直播推流:检查推流功能是否稳定,测试不同设备和网络条件下的推流质量。
  • 实时互动:验证直播过程中聊天、弹幕、礼物等互动功能是否正常工作。
  • 直播结束:测试直播结束后的处理,包括保存直播记录、直播回放的生成和展示

给你一个微信上一个聊天的窗口你是 怎么测试的?

 

双十一抢券怎么测

 (1)抢劵设置是否正确,不同时间节点、优惠券类型,优惠券数量

(2)查看不同抢券时间点是否正常显示该优惠券

(3)测试优惠券不同状态,待开抢、正在抢、抢光了

(4)验证是否准点实现“开抢”按钮;抢到券显示抢券成功并能在我的优惠券页面查看,未抢到显示抢光了,并能正确回退到我的优惠券页面查看。

(5)后台是否记录到了每位抢券的用户相关信息

(6)一个用户id是否同一时间点、不同时间点抢多次券

说一下购物车功能,怎么测试呢?

说下模块的功能测试点怎么整理的?

 手机拍照功能怎么测试?

. 给你一个 N95 口罩你要怎么编写测试用 例?
你讲一下登录功能,你会考虑哪些测试 点呢?
你能说说 支付功能 怎么测试么?

印象中最深刻的 bug  

发现问题背景

外卖下单派送功能的测试中,我们发现了一个严重的 bug:在用户选择配送时间段后,系统没有正确地将配送时间应用到订单中,导致订单的实际配送时间与用户选择的时间段不匹配。这一问题可能会影响用户体验,尤其是当用户对配送时间有明确要求时。

测试过程

  1. 测试步骤

    • 登录应用:使用测试账户登录外卖应用。
    • 选择商品:从餐厅菜单中选择几种商品,并添加到购物车中。
    • 下单流程:进入结算页面,选择配送地址和时间段。
    • 提交订单:确认订单详情并提交。
  2. 验证问题

    • 订单追踪:进入“我的订单”页面,查看刚刚提交的订单详情。
    • 时间验证:检查订单的配送时间是否与用户选择的时间段一致。

在测试过程中,我们发现订单的实际配送时间与用户选择的时间段不一致,出现了预期与实际不符的情况。

排查过程

  1. 重现问题

    • 重复测试:多次重复以上测试步骤,确认问题的存在不是偶发的。
    • 不同时间段:测试不同的时间段选项,验证是否所有时间段都出现相同的问题。
  2. 查看日志

    • 系统日志:查看服务器和客户端日志,检查订单处理的各个步骤是否有异常记录。
    • 错误日志:注意日志中的错误信息,特别是与时间相关的错误。
  3. 排查代码

    • 检查前端代码:审查时间选择器的代码,确保用户选择的时间被正确地提交到后端。
    • 后端逻辑:审查处理订单的后端代码,确认时间选择是否被正确地接收和处理。
  4. 数据库验证

    • 数据库记录:检查数据库中的订单记录,确认实际存储的配送时间是否与前端传递的时间一致。
    • 时间字段:确保数据库表中相关时间字段的格式和数据类型正确。
  5. 业务逻辑分析

    • 时间处理:分析订单时间处理的业务逻辑,确保没有逻辑错误导致时间设置不正确。
    • 时间转换:检查是否有时间格式转换错误或时区问题。

验证过程

  1. 修复方案

    • 与研发讨论:将发现的问题详细报告给研发团队,协助他们分析问题根源并提出修复方案。
    • 代码修改:研发团队根据问题排查结果修复了代码中的时间处理错误,确保用户选择的时间段能够正确应用到订单中。
  2. 重新测试

    • 功能验证:修复后,重新进行相同的测试流程,确认问题是否已经解决。
    • 边界条件测试:测试各种时间段的边界条件,确保修复后的功能在所有情况下都能正常工作。
  3. 用户验证

    • 回归测试:在其他相关功能上进行回归测试,确认修复没有引入新的问题。
    • 用户反馈:在生产环境中监控用户反馈,确保修复后的功能在实际使用中没有再出现类似问题。

帮助研发的方式

  • 详细描述问题:在问题报告中提供详细的步骤、日志和截图,帮助研发团队快速定位问题。
  • 协助分析:与研发团队密切合作,分析日志和代码,提供必要的技术支持。
  • 验证修复:在问题修复后,进行全面的测试,确认修复的有效性,减少反复修改的时间。

 

三、缺陷,bug

项目里,bug 都有哪些类型,以及哪些 地方容易出 bug

(1)代码错误、界面错误、设计缺陷、配置相关、性能问题
(2)参数的校验,边界值,复杂的逻辑,异常的业务场景

如何提交一个高质量的 bug

 (1)bug标题、bug模块、bug对应的版本、bug严重级别、bug详细现象描述、复现步骤

(2)唯一性:一个bug说明一个问题

(3)bug描述要前后一致,不能有歧义

(4)附带bug现象截图、报错日志

(5)bug不能带有个人观点,对事不对人

怎么定位是前端bug还是后端bug

(1)界面排版布局错误,兼容性问题,在网络不稳定下导致的js/css未加载完全或请求超时,也是前端bug

(2)对于数据或者逻辑处理上的问题,可以通过抓包工具fiddler,或者查看日志分析

①抓包工具:

检查请求地址、参数的正确性

不正确则为前端bug;

若正确进一步检查服务器返回的响应,若响应内容不正确,则是后端处理出错

请求和响应都正确,就是前端渲染响应的数据出错

②报错日志,分析日志里面的异常报错信息,查看数据库数据判断前端还是后端问题

开发不认同你的 bug,你怎么处理?

 (1)首先确认开发环境是否和自己的测试环境一致,缓存有没有清除

(2)看bug是否能够重现,级别低的bug先记录到平台,级别高的bug对应需求文档的预期结果跟开发说明,实在不行找产品确认

偶发性 bug,作为测试该怎么处理?

 (1)复现率低的bug,要提交,描述清除问题的复现步骤,环境,测试数据和日志信息

(2)如果未复现,在接下来的测试中,时刻保持关注,每次执行同样的或者相近的步骤时候,看能否复现之前的bug

(3)如果一直未复现,可暂时关闭bug,备注说明关闭不是因为修复,而是经过多个版本后不复现了

项目页面无法访问,如何定位问题?

 (1)判断页面的域名是否可以正常解析到

(2)ping命令判断服务器是否可达,如果不可达用trance route命令,查看一下是哪个节点出现问题

(3)如果不是网络问题,再去后台服务器查看服务进程有没有开启,数据库有没有开启

项目上线后发现的 bug,怎么 处理呢

 (1)当发现线上的bug,应该快速响应处理,先积极配合开发重现bug来定位问题,如果严重bug,需要积极解决,更新版本,如果bug不是那么严重,则放到下一个迭代版本中处理。

(2)总结bug出现的原因和规避方案

①测试用例覆盖不全面---》优化测试用例,增加用例评审

②测试的时间不充分,规划充分的测试时间,严格按照时间节点完成测试工作

③测试的环境或者测试的数据受限---》在真实环境下覆盖测试

④开发人员修复其他问题时,引入了新的bug---》明确测试范围,尤其是代码修改的功能部分,回归测试时,主流程必须回归,必须是一个完整流程

fiddler

如何构造弱网测试

(1)在fiddler中result右键customize rules,打开CustomRules.js文档

(2)修改文档中,每上传或下载1kb数据需要的时间来模拟弱网场景

(3)然后点击Simulate Modem SPeeds,开启弱网模拟

fiddler 断点有什么用?

 (1)主要是修改请求和响应的数据

(2)比如提交订单,金额是200,测试时想篡改金额,可以通过fiddler对before requests设置断点,修改请求数据,传一个520金额,检查服务端是否会正常处理。

(3)测试会需要返回不同的数据前端展示,可以after response设置断点,修改返回的数据查看前端实现效果

四、数据库

Group by order by 区别?

(1)Group by是分组

(2)Order by是排序 

两者如果要一起使用的话,先分组后排序

mysql 中的 where having 有什么 区别?

(1)where 子句中的条件表达式having都可以跟,而having有些 不行

(2)having子句可以用聚合函数(sum、count、avg、max),而where不行

数据库中的左连接、右连接和内连 接有什么区别?

(1)左连接(left join)显示左表所有数据及右表满足条件的数据,右表无数据则显示null

(2)右连接,则是显示右表的所有数据,及左表满足条件的数据,左表无对应数据则显示null

(3)内连接(inner join)显示左右两张表连接字段相等的数据

五、Linux

linux查看日志的命令?当Linux数 据过多时,如何查看自己想看的信息?

(1)查看日志命令,包括tail。head、cat、less等

(2)如果过多,可以通过tail -f查看实时日志 ,也可以加上grep错误关键字来过滤

(3)如果操作报错,使用ctrl+c结束日志打印,依据操作时间找到exception关键字后面的报错信息

Linux 系统下如何部署测试环境?

(1)开发会基于部署文档构建新镜像生成一个压缩包

(2)测试把压缩包传递到测试服务器,直接加载镜像,然后docker run 运行容器,并映射tomcat端口8080,mysql端口3306,以此完成测试环境部署

linux 下编辑文件常用的命令有哪些?

(1)vi或者vim,可以直接对linux文本进行编辑并保存
(2)sed,流式编辑器,以行为单位进行文本操作
(3)awk以行为单位进行文本编辑,也可以列为单位进行文本编辑
(4)cut对文本进行切割,以行为单位进行文本处理
(5)sort,对制定的文件按照一定的规则进行排序

查看进程的命令 ps,常用参数有哪些

 (1)-A,列出所有的进程

(2)-w,显示价款可以显示较多的资讯

(3)-au,显示较纤细的资讯

(4)-aux,显示所有包含其他使用者的行程

什么时候会用liunx定位bug?定位什么 样的 bug?

(1)一般用来定位后端bug
(2)tail -f 日志文件名来查看日志
(3)容器部署,docker cp 【容器ID】:【容器内部路径】【linux路径】方式导出日志到linux,再通过xftp将日志导出到本地查看

相关文章:

软件测试面试题-自测

一、测试流程 1.项目测试流程你是怎么开展的? ①首先,需求分析阶段,分析需求点,需求确定以后进入测试计划阶段,参考需求规格说明书进行测试计划编写 ②接着,进入测试设计阶段,依据需求文档及原…...

深度学习-神经网络

文章目录 一、基本组成单元:神经元二、神经网络层三、偏置与权重四、激活函数1.激活函数的作用2.常见的激活函数1).Sigmoid2).Tanh函数3).ReLU函数 五、优点与缺点六、总结 神经网络(Neural Network, NN)是一种模拟人类大脑工作方式的计算模型…...

Redis - 集群篇 - 集群模式

面试的时候被人问到集群的问题,搬砖仔哪懂这么多,继续整理一下知识点 Redis 集群模式 Redis集群就是将多个Redis节点连接在一起, 让Redis在不同的节点上同时提供服务。 Redis集群主要有三种模式: 主从复制模式(mast…...

Robot Operating System——线速度和角速度

大纲 应用场景1. 移动机器人控制场景描述具体应用 2. 无人机控制场景描述具体应用 3. 机械臂运动控制场景描述具体应用 4. 自动驾驶车辆控制场景描述具体应用 5. 机器人仿真场景描述具体应用 6. 机器人传感器数据处理场景描述具体应用 定义字段解释 案例 geometry_msgs::msg::T…...

量化投资策略_因子打分选股的案例实现

一:因子打分选股的介绍 因子打分选股是一种量化投资策略,它通过选取多个与股票收益率相关的因子,对股票进行综合评分,然后根据评分来选择股票构建投资组合。以下是构建多因子打分选股模型的一般步骤: 数据预处理&…...

架构师知识梳理(七):软件工程-工程管理与开发模型

软件工程概述 软件开发生命周期 软件定义时期:包括可行性研究和详细需求分析过程,任务是确定软件开发工程必须完成的总目标,具体可分成问题定义、可行性研究、需求分析等。软件开发时期:就是软件的设计与实现,可分成…...

bp的模块被隐藏了

看我们现在没有代理那个模块了 我们点击查看 这里有被我们隐藏的模块,比如代理等,把前面的眼睛点一下 这个模块就出来了,如果想把他固定在任务栏里 拖动这个位置 就好了,如果有其他问题可以留言,看到可进我的努力给你…...

C++学习笔记(21)

243、条件变量-生产消费者模型 条件变量是一种线程同步机制。当条件不满足时,相关线程被一直阻塞,直到某种条件出现,这些线 程才会被唤醒。 C11 的条件变量提供了两个类: condition_variable:只支持与普通 mutex 搭配&…...

Ubuntu系统入门指南:常用命令详解

Ubuntu系统入门指南:常用命令详解 引言 Ubuntu是一个基于Linux内核的开源操作系统,由Canonical公司和社区共同开发和维护。它以易用性、稳定性和广泛的软件支持而著称,广泛应用于个人电脑、服务器和云计算环境。对于新手来说,掌…...

keep-alive缓存不了iframe

最近做了个项目&#xff0c;其中有个页面是由 iframe 嵌套了一个另外的页面&#xff0c;在运行的过程中发现 KeepAlive 并不生效&#xff0c;每次切换路由都会触发 iframe 页面的重新渲染&#xff0c;代码如下&#xff1a; <router-view v-slot"{ Component }">…...

Gradio快速部署构建AIGC的web应用 ,python

Gradio快速部署构建AIGC的web应用 &#xff0c;python Gradio开源项目链接&#xff1a; https://github.com/gradio-app/gradiohttps://github.com/gradio-app/gradio &#xff08;1&#xff09;python的pip安装&#xff1a; pip install gradio &#xff08;2&#xff09;写…...

《职教论坛》

《职教论坛》投稿须知 《职教论坛》为全国中文核心期刊。为进一步提高期刊的规范化和标准化&#xff0c;也可使作者投搞有规可循&#xff0c;特对来稿提出如下要求&#xff1a; 一、稿件应有创新内容&#xff0c;应观点明确、资料准确、结构严谨、表述清楚、文字简明&#xff…...

JZ2440开发板——S3C2440的时钟体系

参考博客 &#xff08;1&#xff09;S3C2440-裸机篇-05 | S3C2440时钟体系详解&#xff08;FCLK、PCLK、HCLK&#xff09; 一、三种时钟&#xff08;FCLK、HCLK、PCLK&#xff09; 如下图所示&#xff0c;S3C2440的时钟控制逻辑&#xff0c;给整个芯片提供三种时钟&#xff1…...

[数据集][目标检测]男女性别检测数据集VOC+YOLO格式9769张2类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;9769 标注数量(xml文件个数)&#xff1a;9769 标注数量(txt文件个数)&#xff1a;9769 标注…...

static 初始化报错

在 C 或 C 中&#xff0c;当你在函数中使用 static 关键字初始化一个局部变量时&#xff0c;编译器要求初始化器&#xff08;initializer&#xff09;是编译时常量。如果你尝试用动态计算的值初始化 static 变量&#xff08;如函数参数或运行时生成的值&#xff09;&#xff0c…...

3D Gaussian Splatting 论文学习

概述 目前比较常见的渲染方法大致可以分为2种&#xff1a; 将场景中的物体投影到渲染平面&#xff1a;传统的渲染管线就是这种方式&#xff0c;主要针对Mesh数据&#xff0c;可以将顶点直接投影成2D的形式&#xff0c;配合光栅化、深度测试、Alpha混合等就可以得到渲染的图像…...

MySQL 安全机制全面解析

‍ 在如今的数字化时代&#xff0c;数据库安全 变得越来越重要。为了防止对数据库进行非法操作&#xff0c;MySQL 定义了一套完整的安全机制&#xff0c;包括用户管理、权限管理 和 角色管理。本文将为你深入浅出地介绍这三大安全机制&#xff0c;帮助你轻松掌握MySQL的安全管…...

vue原理分析(十四)研究new Vue()中的 initProvide

在Vue.prototype._init 中有一些init函数&#xff0c;今天我们来研究这些init函数 Vue.prototype._init function (options) {......{initProxy(vm);}......initLifecycle(vm);initEvents(vm);initRender(vm);callHook$1(vm, beforeCreate, undefined, false /* setContext *…...

Qt控制开发板的LED

Qt控制开发板的LED 使用开发板的IO接口进行控制是嵌入式中非常重要的一点&#xff0c;就像冯诺依曼原理说的一样&#xff0c;一个计算机最起码要有输入输出吧&#xff0c;我们有了信息的接收和处理&#xff0c;那我们就要有输出。 我们在开发板上一般都是使用开发板的GPIO接口…...

S3C2440开发板点亮LED灯+PWM定时器

目录 GPIO引脚和寄存器概述 点亮LED灯步骤 1.配置GPIO 2.点亮LED 设置引脚为输出 控制引脚电平 完整代码 PWM GPIO引脚和寄存器概述 GPIO端口&#xff1a; S3C2440的GPIO引脚可被配置为输入或输出&#xff08;控制LED的引脚通常配置为输出模式&#xff09;。寄存器&#…...

S-Procedure的基本形式及使用

理论 Lemma 1. ( S- Procedure[ 34] ) : Define the quadratic func- \textbf{Lemma 1. ( S- Procedure[ 34] ) : Define the quadratic func- } Lemma 1. ( S- Procedure[ 34] ) : Define the quadratic func- tions w.r.t. x ∈ C M 1 \mathbf{x}\in\mathbb{C}^M\times1 x…...

free -h 查看内存free空间不足

free空间不足 大部分被buff/cache占用 解决办法一: 手动释放缓存 释放页缓存 sudo sync; sudo sysctl -w vm.drop_caches1 释放目录项和inode缓存 sudo sync; sudo sysctl -w vm.drop_caches2 释放所有缓存&#xff08;页缓存、目录项和inode缓存&#xff09; sudo sync…...

rust学习笔记

参考资料&#xff1a;https://doc.rust-lang.org/book/ch01-02-hello-world.html 一、 编译与运行 在 Rust 中&#xff0c;编译和运行代码的常用命令是使用 cargo&#xff0c;这是 Rust 的包管理和构建工具。以下是使用 cargo 和 rustc&#xff08;Rust 编译器&#xff09;的具…...

【有啥问啥】复习变分下界即证据下界(Evidence Lower Bound, ELBO):原理与应用

复习变分下界即证据下界&#xff08;Evidence Lower Bound, ELBO&#xff09;&#xff1a;原理与应用 变分下界&#xff08;Variational Lower Bound&#xff09;&#xff0c;也称为“证据下界”&#xff08;Evidence Lower Bound, ELBO&#xff09;&#xff0c;是概率模型中的…...

Linux shell编程学习笔记78:cpio命令——文件和目录归档工具(上)

0 前言 在Linux系统中&#xff0c;除了tar命令&#xff0c;我们还可以使用cpio命令来进行文件和目录的归档。 1 cpio命令的功能&#xff0c;帮助信息&#xff0c;格式&#xff0c;选项和参数说明 1.1 cpio命令的功能 cpio 名字来自 "copy in, copy out"&#xf…...

为什么在 JSON 序列化中不使用 transient

有些小伙伴发现了&#xff0c;明明在返回的实体类中指定了属性为transient。为什么前端得到的返回json中还是有这个属性的值&#xff1f; 类&#xff1a; private String name; private transient String password;返回结果&#xff1a; { name:"刘大大", password:…...

K8S - Volume - NFS 卷的简介和使用

在之前的文章里已经介绍了 K8S 中两个简单卷类型 hostpath 和 emptydir k8s - Volume 简介和HostPath的使用 K8S - Emptydir - 取代ELK 使用fluentd 构建logging saidcar 但是这两种卷都有同1个限制&#xff0c; 就是依赖于 k8s nodes的空间 如果某个service pod中需要的vol…...

IO模型---BIO、NIO、IO多路复用、AIO详解

本篇将想给详细解释一下什么是BIO、NIO、IO多路复用以及AIO~ 同步的阻塞(BIO)和非阻塞(NIO)的区别 BIO&#xff1a;线程发来IO请求后&#xff0c;一直阻塞着IO线程&#xff0c;需要缓冲区这边数据准备好之后&#xff0c;才会进行下一步的操作。 举个&#x1f330;&#xff1…...

蓝桥杯真题——约翰的牛奶

输入样例&#xff1a; 8 9 10 输出样例&#xff1a; 1 2 8 9 10 本题是宽搜的模版题&#xff0c;不论怎么倒牛奶&#xff0c;A,B,C 桶里的牛奶可以看做一个三元点集 我们只要找到A桶是空的&#xff0c;B,C桶中的状态即可 #include <iostream> #include <cstring…...

单机docker-compose部署minio

单机多副本docker-compose部署minio 简单介绍 如果服务器有限可以单机挂载多硬盘实现多副本容错&#xff08;生产不推荐&#xff09; 部署好的文件状态 有两个重要文件 docker-compose.yaml和nginx.conf docker-compose.yaml是docker部署容器的配置信息包括4个minio和1个ng…...