面试题目记录

我是一个小小的垃圾测试工程师,目前作为一个垃圾测试,想换工作,想慢慢积累属于自己的面试题目。

通用面试题

你们的测试流程是什么样的?

你在工作中可有遇到什么难题?

python面试题

C++面试题

设计用例面试题

题目一:存储用例设计

给你十六个视频源,接十六个存储盘,每次启动一个存储盘,每当一个存储盘存储满之后,再开启下一个存储盘,当十六个存储盘存满之后,再继续从第一个开始循环,你怎么设计测试用例。

这道题是最近面试官给的题目,我作为UFS存储芯片设计,小小外包,从来没接触过用例设计,所以没答上来,但这种题肯定会常问的,答案是我问的AI,仅参考参考。

一、 核心功能测试:验证“轮转存储”机制正确性
这是测试的基石,要确保系统最基本的行为符合设计预期。

单个循环基础流程验证:

用例1: 启动系统,向视频源写入数据。确认只有第一个存储盘被激活并开始存储,其余15个处于待命或未激活状态。

用例2: 持续写入,直到第一个存储盘达到其定义的“满”状态(如容量达到95%,或文件系统报满)。监控系统,确认在第一个盘满的瞬间或之后,系统能自动、无中断地切换到第二个存储盘,并继续写入。

用例3: 重复上述过程,依次验证第2个盘满后切换到第3个,第3个到第4个……直到第16个盘。记录每次切换的触发点(实际容量)、切换延迟和数据是否有丢失。

用例4(关键用例): 在第16个存储盘存满后,持续写入。验证系统是否能正确循环回第一个存储盘。这里需要明确:是覆盖第一个盘上的旧数据,还是清空后重新开始?根据设计不同,要验证其行为是否符合预期(例如,覆盖最早的视频文件)。

多轮循环稳定性验证:

用例5: 进行连续多轮(如3-5轮) 完整的16盘循环存储测试。检查系统在长时间、多周期运行下,轮转逻辑是否始终保持一致,没有出现跳盘、重复使用同一盘或顺序错乱的情况。

二、 边界与异常情况测试:挑战系统的鲁棒性
这是衡量系统是否成熟的关键,需要模拟各种“意外”。

存储盘“满”的边界定义:

用例6: 测试不同“满”的定义。是物理容量100%?还是预留管理空间后的“逻辑满”(如95%)?在临界点(如99.9%)持续写入小块数据,观察切换触发是否精准,是否会因缓存等原因导致切换前写入失败。

用例7: 慢盘测试:其中一个盘写入速度极慢,导致数据流入速率大于写入速率。系统是等待该盘缓慢写满,还是根据超时机制切换?这需要明确设计逻辑。

存储盘异常场景:

用例8: 盘中拔盘:在某个盘正在存储时,热拔除该盘。系统应能检测到错误,并尝试:a) 切换到下一个可用盘继续存储;b) 报警并暂停。需验证后续轮转是否跳过这个坏盘,还是将其保留在序列中。

用例9: 插入坏盘/未格式化盘:在轮转序列中预置一个无法识别的坏盘或RAW格式盘。当轮转到它时,系统应能跳过它并转到下一个好盘,同时产生明确告警。

用例10: 盘提前满:手动将一个未轮转到的盘填满,观察当轮转到它时,系统是尝试写入失败后切换,还是能智能识别其已满状态直接跳过。

系统与电源异常:

用例11: 切换瞬间断电:恰好在存储盘A满、切换到盘B的瞬间切断系统电源。重启后,检查:上次写入的文件是否完整?系统是应该从盘B开始继续写,还是回退到盘A的末尾?需验证数据的一致性和状态恢复的正确性。

用例12: 任意时刻断电:在循环中的随机时间点暴力断电重启,检查文件系统损坏情况,以及系统重启后是否能从正确的盘继续写入。

三、 性能与压力测试:评估系统的实际承载能力
吞吐量与实时性:

用例13: 十六路视频源同时满带宽写入:测试系统的聚合写入带宽是否满足要求。监控每个盘的写入速度,确保在切换期间和稳定写入期都没有性能瓶颈。

用例14: 切换延迟测试:精确测量从“盘N满”到“盘N+1成功写入第一个数据包”的时间差。这个延迟必须小于视频源的缓冲区,否则会导致数据丢失。这是核心性能指标。

压力与容量风暴:

用例15: 使用小容量盘进行高频切换:用16个小容量U盘进行测试,让系统在短时间内频繁触发盘满切换,考验状态机切换的稳定性和文件系统频繁挂载/卸载的可靠性。

用例16: 混合磁盘类型:模拟真实场景,使用不同品牌、型号、速度(HDD, SSD, UFS卡)的存储介质混合测试,观察系统兼容性和最慢磁盘对整体流程的影响。

四、 配置与兼容性测试
用例17: 变更存储盘数量:如果系统支持配置,测试配置为少于16个(如8个)、多于16个盘时,轮转逻辑是否正常。

用例18: 变更存储盘顺序:如果系统能识别盘符或槽位,打乱物理插入顺序,测试轮转顺序是基于物理槽位还是基于系统发现的顺序。

五、 数据完整性验证
这是存储系统的根本,所有功能都必须建立在数据正确的基础上。

用例19: 数据校验:在视频源端,对发出的每一帧数据植入校验码(如CRC)或使用固定测试 pattern。在存储盘上,随机抽查各个盘、各个时间段存储的文件,进行回读校验,确保数据比特级正确。

用例20: 文件系统与索引检查:检查每个盘上生成的文件是否完整(没有半截文件),文件命名、时间戳序列是否连续正确,能否被标准播放器正常解码播放。

---------------------------------------------------------------------------------------------------------------------------------

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

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

相关文章

2026年 洁净室检测服务推荐榜单:自净时间/压缩空气/气流流型/无尘车间/手术室检测,专业认证与高效服务深度解析

2026年洁净室检测服务推荐榜单:自净时间/压缩空气/气流流型/无尘车间/手术室检测,专业认证与高效服务深度解析 在生物医药、精密电子、高端医疗器械及医疗手术等对生产与操作环境有严苛要求的领域,洁净室及相关受控…

【题解】雪人三元组统计问题(循环移位 + 条件拆分优化)

【题解】雪人三元组统计问题(循环移位 + 条件拆分优化)题目大意 给定三个长度为 n 的循环数组 a、b、c(循环数组指元素可循环访问,如 a[n] 等价于 a[0]),统计合法三元组 (i, j, k) 的数量,满足:对所有 t ∈ [0…

Mapbox中如何对已经加载的线段进行编辑?

在 Mapbox 中编辑已加载的线段(LineString)通常需要结合 Mapbox GL JS 和其相关插件来实现。以下是几种常见的编辑方法: 一、使用 Mapbox GL Draw 插件(最常用) 这是 Mapbox 官方推荐的绘图/编辑工具,支持…

吐血推荐!专科生必备8款AI论文工具测评

吐血推荐!专科生必备8款AI论文工具测评 2026年专科生论文写作工具测评:为何值得一看? 随着AI技术的不断进步,越来越多的学术工具开始进入高校师生的视野,尤其是对于专科生而言,论文写作不仅是学业的重要环…

深度测评9个一键生成论文工具,本科生论文写作必备!

深度测评9个一键生成论文工具,本科生论文写作必备! AI 工具助力论文写作,高效与精准并存 随着人工智能技术的不断进步,越来越多的 AI 工具被应用于学术写作中,尤其是在本科生论文写作过程中,这些工具不仅…

详细介绍:SVN 入门与实战:从零开始掌握企业级版本控制

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

ppo可以不需要提取特征,直接训练ac吗。ppo不知道自己现在在第几步吗

ppo可以不需要提取特征,直接训练ac吗Qwen3-MaxPPO(Proximal Policy Optimization)是一种策略梯度方法,属于Actor-Critic(AC)架构的一种实现。关于你的问题:“PPO可以不需要提取特征,…

2026年 验证检测服务推荐榜单:臭氧浓度/无菌隔离器/纯蒸汽/GMP/灭菌柜/纯化水/生物安全柜/洁净工作台/高效过滤器检漏,专业精准的合规保障之选

2026年验证检测服务推荐榜单:臭氧浓度/无菌隔离器/纯蒸汽/GMP/灭菌柜/纯化水/生物安全柜/洁净工作台/高效过滤器检漏,专业精准的合规保障之选 在制药、生物科技、医疗器械及高端精密制造等行业,生产环境的洁净度、工…

2026年1月青瓦厂家推荐排行榜:古建筑青瓦/青砖青瓦/小青瓦/仿古青瓦/古建青瓦,甄选匠心工艺与古韵质感优质供应商

2026年1月青瓦厂家推荐排行榜:古建筑青瓦/青砖青瓦/小青瓦/仿古青瓦/古建青瓦,甄选匠心工艺与古韵质感优质供应商 在当代建筑文化复兴与历史街区保护的双重驱动下,古建筑材料市场,尤其是青瓦、古建筑青瓦、青砖青瓦…

基于深度学习的太阳能电池板检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)

本文介绍了一套基于YOLO系列算法的太阳能电池板缺陷检测系统。该系统支持多模态输入(图片/视频/实时摄像头),具备用户管理、多模型切换、检测结果可视化与保存等功能。技术栈采用Python3.10+PyQt5+SQLite,核心对比…

4.2.多线程JUC-并发和并行

一.并发:1.概念:2.解析:"并发"重点强调"交替",就好比打游戏的同时抽烟、喝可乐,因此右手一会儿点击鼠标、一会儿抽烟、一会儿喝可乐,所以这种情况可以看作并发,右手就可以看…

4.3.多线程JUC-多线程的实现方式

一.多线程共有3种实现方式: 二.第一种实现方式:继承Thread类的方式进行实现 1.Thread类详解: 如上图,其中解释到线程 是程序中的执行线程。Java 虚拟机允许应用程序并发地运行多个执行线程,意思是Thread类就表示Java里…

【kylin-Linux】Flash兼容插件包安装

[注意]Adobe Flash已在2020年底停止更新安装思路1.更换apt源2.更新软件源3.安装kylin-flash-plugin步骤1.更换软件源编辑sources.list文件,更换为你需要的源地址,网上有很多开源镜像站,具体自己去网络上寻找。sudo vim /etc/apt/sources.list…

Java毕设项目:基于springboot的网格仓管理系统的设计与实现(源码+文档,讲解、调试运行,定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

【毕业设计】基于springboot的网格仓管理系统的设计与实现(源码+文档+远程调试,全bao定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围::小程序、SpringBoot、SSM、JSP、Vue、PHP、Java、pyth…

Javadoc 常用标签及用法

基础标签1. param - 参数说明/*** 计算两个数的和* param a 第一个加数* param b 第二个加数*/ public int add(int a, int b) {return a b; }2. return - 返回值说明/*** 获取用户姓名* return 用户的姓名,如果不存在返回null*/ public String getName() {return …

2026年不锈钢装饰厂家推荐排行榜:线条、门套、淋浴房、屏风隔断、金属柜与电梯装饰,匠心工艺与时尚设计完美融合

2026年不锈钢装饰厂家推荐排行榜:线条、门套、淋浴房、屏风隔断、金属柜与电梯装饰,匠心工艺与时尚设计完美融合 在现代建筑装饰与室内设计中,不锈钢以其卓越的耐久性、多样的表面处理工艺以及强烈的现代感,已从传…

《构建之法》阅读笔记(团队协作与流程)

团队协作部分的核心在于,通过科学的流程将个人能力整合为高效的集体产出。书中指出,一个成功的软件团队不仅需要优秀的个体,更需要明确的目标、合适的流程与良好的沟通机制。敏捷开发方法,特别是Scrum框架,被重点…

solidity语法

1 ether = 1 000 000 000 gwei  (10⁹ gwei -- 1e9) = 1 000 000 000 000 000 000 wei (10⁸ wei -- 1e18) 学习路径学习区块链基础和solidity和foundry,了解基础的开发- 基础课程:区块链基础,solidity语言开…

学习进度 9

DataFrame 其实是带列名的分布式表格,和 MySQL 里的表、Pandas 里的 DataFrame 逻辑差不多,比纯手写 RDD 算子简单太多。比如之前用 RDD 统计文本行数,得写sc.textFile("file.txt").count(),而 DataFram…