关于编写测试用例的细枝末节
这里写目录标题
- 故障判别类-边界考虑
- 示例1.0:若A>20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为1,否则输出B为0。
- 故障判别类-不可恢复测试
- 示例1.1:若A>20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为1,否则输出B为0,该故障不可恢复。
- 故障判别类-位翻转测试
- 示例1.2:若A>20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为1,否则输出B为0,该故障可恢复。
- 示例1.3:复位有效时,输出B为0;复位无效时,若A>20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为1;若A≤20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为0。
- 示例1.4:复位有效时,输出B为0;复位无效时,若A>20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为1,否则输出B为0,该故障不可恢复。
故障判别类-边界考虑
示例1.0:若A>20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为1,否则输出B为0。
注:数据A的采样频率大于1000Hz。
- 应考虑A数据的分辨率:
若A的分辨率为0.3,需计算出最接近阈值的数值,即为20.1和20.4,那么设计这两种情况的测试即可。 - 应考虑判故时间周期:
根据此示例,判故间隔为1ms,也就是说需观测14ms和15ms这两种情况即可。
用例示例
步骤1:构造A为20.1,等待14ms,查看B是否为0。
步骤2:等待1ms,查看B是否为0。
步骤3:构造A为20.4,等待14ms,查看B是否为0。
步骤4:等待1ms,查看B是否为1。
故障判别类-不可恢复测试
示例1.1:若A>20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为1,否则输出B为0,该故障不可恢复。
注:数据A的采样频率大于1000Hz。
用例示例
步骤1:构造A为20.1,等待14ms,查看B是否为0。
步骤2:等待1ms,查看B是否为0。
步骤3:构造A为20.4,等待14ms,查看B是否为0。
步骤4:等待1ms,查看B是否为1。
步骤5:构造A为20.1,等待15ms,查看B是否为1。
故障判别类-位翻转测试
- 先验证故障状态的初始状态是否正确。
- 验证故障状态为正常时,应先构造故障状态为故障(不可恢复类除外)。
- 验证故障状态为故障时,应先构造故障状态为正常。
示例1.2:若A>20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为1,否则输出B为0,该故障可恢复。
注:数据A的采样频率大于1000Hz。
用例示例
步骤1:构造复位有效,查看B是否为0。
步骤2:构造复位无效,A为20.4,等待14ms,查看B是否为0。
步骤3:等待1ms,查看B是否为1。
步骤4:构造A为20.1,等待1ms,查看B是否为1。
示例1.3:复位有效时,输出B为0;复位无效时,若A>20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为1;若A≤20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为0。
注:数据A的采样频率大于1000Hz。
用例示例
步骤1:构造复位有效,查看B是否为0。
步骤2:构造复位无效,A为20.4,等待14ms,查看B是否为0。
步骤3:等待1ms,查看B是否为1。
步骤4:构造A为20.1,等待14ms,查看B是否为1。
步骤5:等待1ms,查看B是否为0。
示例1.4:复位有效时,输出B为0;复位无效时,若A>20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为1,否则输出B为0,该故障不可恢复。
注:数据A的采样频率大于1000Hz。
用例示例
步骤1:构造复位有效,查看B是否为0。
步骤2:构造复位为无效,A为20.1,等待14ms,查看B是否为0。
步骤3:等待1ms,查看B是否为0。
步骤4:构造A为20.4,等待14ms,查看B是否为0。
步骤5:等待1ms,查看B是否为1。
步骤6:构造A为20.1,等待15ms,查看B是否为1。
相关文章:
关于编写测试用例的细枝末节
这里写目录标题 故障判别类-边界考虑示例1.0:若A>20.3且持续时间≥15ms时(判故周期为1000Hz),输出B为1,否则输出B为0。 故障判别类-不可恢复测试示例1.1:若A>20.3且持续时间≥15ms时…...
《计算机网络》课后探研题书面报告_了解PPPoE协议
PPPoE协议的工作原理与应用分析 摘 要 PPPoE(Point-to-Point Protocol over Ethernet)是一种广泛应用于宽带接入的网络协议,特别是在DSL(数字用户线路)和光纤网络中具有重要的应用价值。PPPoE结合了PPP协议的认证、加…...
Linux Centos 安装Jenkins到服务
一、前言 假设你已经下载了jenkins.war 安装了对应的jdk,下面我们来安装jenkins,以服务的形式安装。 二、安装 1)将jenkins.war拷贝到合适的位置,我的位置 /u01/jenkins/ ,位置你自己选。 2)创建系统用户…...
解决“无法定位程序输入点 av_buffer_create 于动态链接库 XXX\Obsidian.exe 上”问题
解决“无法定位程序输入点 av_buffer_create 于动态链接库 XXX\Obsidian.exe 上”问题 问题描述 本人在使用zotero中的zotero one(青柠学术插件)的时候,使用插件跳转obsidian中的对应笔记,出现上图情况。(错误中提到的…...
基于考研概率论知识解读 Transformer:为何自注意力机制要除以根号 dk
Transformer自注意力机制中除以 d k \sqrt{d_k} dk 深度剖析 【 Transformer 系列,故事从 d k \sqrt{d_k} dk 说起】 LLM这么火,Transformer厥功甚伟,某天心血来潮~,再去看看! 它长这个样子: 深入…...
网络安全学习81天(记录)
前言: 小迪安全,81天,开始了php代码审计 思路: 内容: #知识点: 1、审计漏洞-SQL 数据库注入挖掘 1、审计思路-正则搜索&功能追踪&辅助工具 3、审计类型-常规架构&MVC 架构&三方框架 #章…...
MATLAB学习笔记-table
1.在table中叠加table table 的每一列具有固定的数据类型。如果要让表的所有单元格都可以任意填充,就得让每一列都是 cell 类型,这样表中每个单元格都是“一个元胞”。创建时可以先构造一个 空 cell 数组(大小为行数列数)&#x…...
mybatisPlus(条件构造器API)
文章目录 目录一、mybatisPlus的介绍二、mybatisPlus的基础使用配置BaseMapper的基本CURD(增删改查) 三、wrapper(条件构造器)条件构造器(wrapper)通用API基础条件判断:进阶条件判断(…...
5G+工业互联网迈入规模化发展新阶段
百度安全验证 https://blog.csdn.net/qq_25467441/article/details/145036191?sharetypeblogdetail&sharerId145036191&sharereferPC&sharesourceqq_25467441&spm1011.2480.3001.8118 好看视频-轻松有收获 产业供给加速提升。国内主流模组厂商引领全球5G模组…...
【CI/CD构建】关于不小心将springMVC注解写在service层
背景 之前写一个接口的时候没有察觉到将RequestBody这个注解带到service层了。 今天提交代码的时候,插件没有检测到这个低级错误,导致试飞构建连maven编译都过不了,maven找不到程序包org.springframework.web.bind.annotation这个包 结果…...
《鸿蒙Next ArkTS:开启人工智能应用开发高效新旅程》
在当今科技飞速发展的时代,人工智能与鸿蒙Next的结合正成为开发者们关注的焦点。利用鸿蒙Next的ArkTS语言开发高效的人工智能驱动的应用程序,为我们带来了前所未有的机遇和创新空间。 了解ArkTS语言与鸿蒙Next ArkTS是一种基于TypeScript的静态类型脚本…...
Unity 3D游戏开发从入门进阶到高级
本文精心整理了Unity3D游戏开发相关的学习资料,涵盖入门、进阶、性能优化、面试和书籍等多个维度,旨在为Unity开发者提供全方位、高含金量的学习指南.欢迎收藏。 学习社区 Unity3D开发者 这是一个专注于Unity引擎的开发者社区,汇聚了众多Un…...
什么是SSH登录?SSH客户端软件有哪些?
一、SSH解释 SSH(Secure Shell)登录是一种用于计算机之间加密登录的网络协议。SSH登录允许用户通过互联网访问、控制和修改远程服务器。它提供了加密的通信通道,以保护敏感数据的机密性和完整性。SSH协议支持多种应用,包括SSH&…...
Ubuntu服务器提示:检测到存在恶意文件,补救思路
1. 确定文件类型 可以使用file命令来检查该文件的类型,这有助于判断它是否真的是一个恶意文件 file /path/to/the/file 2. 检查文件内容 使用strings命令查看文件内容,看是否有可疑的命令或脚本: strings /path/to/the/file 3. 扫描系统…...
【学习计算机视觉算法的基础及基本编码-基于Python语言--实例教程】
Python视觉算法实际从0-1实例编码 一、学习基础二、学习计算机视觉基础知识三、深度学习在计算机视觉中的应用四、实例项目五、实践与拓展 一、学习基础 数学基础 线性代数: 学习矩阵、向量的基本概念,包括矩阵的加法、乘法、转置等运算。理解矩阵的秩、…...
从零搭建一个Vue3 + Typescript的脚手架——day1
1.开发环境搭建 (1).配置vite vite简介 Vite 是一个由尤雨溪开发的现代化前端构建工具,它利用了浏览器对 ES 模块的原生支持,极大地提升了开发服务器的启动速度和热更新效率。Vite 不仅适用于 Vue.js,还支持 React、Svelte 等多种框架&…...
Pgsql存储占用分析
基础命令 -- 查询表大小 SELECT pg_total_relation_size(table_name);-- 查询表大小(不带索引) SELECT pg_table_size(table_name);-- 查询表索引大小 SELECT pg_indexes_size(table_name);-- 查询表具体大小 SELECT pg_relation_size(table_name); SEL…...
51c自动驾驶~合集46
我自己的原文哦~ https://blog.51cto.com/whaosoft/13050104 #世界模型会是L3自动驾驶的唯一解吗 三维空间占有率(3D Occupancy)预测的目的是预测三维空间中的每个体素是否被占有,如果被占有,则对应的体素将被标记。3D Semant…...
Elasticsearch:使用全文搜索在 ES|QL 中进行过滤 - 8.17
8.17 在 ES|QL 中引入了 match 和 qstr 函数,可用于执行全文过滤。本文介绍了它们的作用、使用方法、与现有文本过滤方法的区别、当前的限制以及未来的改进。 ES|QL 现在包含全文函数,可用于使用文本查询过滤数据。我们将回顾可用的文本过滤方法…...
《自动驾驶与机器人中的SLAM技术》ch8:基于 IESKF 的紧耦合 LIO 系统
目录 基于 IESKF 的紧耦合 LIO 系统 1 IESKF 的状态变量和运动过程 1.1 对名义状态变量的预测 1.2 对误差状态变量的预测及对协方差矩阵的递推 2 观测方程中的迭代过程 3 高维观测中的等效处理 4 NDT 和 卡尔曼滤波的联系 5 紧耦合 LIO 系统的主要流程 5.1 IMU 静止初始化 …...
TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序
一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...
Rapidio门铃消息FIFO溢出机制
关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系,以下是深入解析: 门铃FIFO溢出的本质 在RapidIO系统中,门铃消息FIFO是硬件控制器内部的缓冲区,用于临时存储接收到的门铃消息(Doorbell Message)。…...
Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...
使用Matplotlib创建炫酷的3D散点图:数据可视化的新维度
文章目录 基础实现代码代码解析进阶技巧1. 自定义点的大小和颜色2. 添加图例和样式美化3. 真实数据应用示例实用技巧与注意事项完整示例(带样式)应用场景在数据科学和可视化领域,三维图形能为我们提供更丰富的数据洞察。本文将手把手教你如何使用Python的Matplotlib库创建引…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...
力扣热题100 k个一组反转链表题解
题目: 代码: func reverseKGroup(head *ListNode, k int) *ListNode {cur : headfor i : 0; i < k; i {if cur nil {return head}cur cur.Next}newHead : reverse(head, cur)head.Next reverseKGroup(cur, k)return newHead }func reverse(start, end *ListNode) *ListN…...
