对于Test Case的一些看法

CANoe教程 | 自动化测试功能-Test Module/Test Unit 概述 CANoe的测试模块包括Test Module和Test Unit两大组件,并且集成了TFS测试功能集(Test Feature Set)和TSL测试服务库(Test Service Library)来帮助用户实现高效的自动化测试。 TFS是CANoe扩展出来的一系列测试功能函数,包括测试报告的输出函数等。 TSL包含一系列的检测函数(Check Function)、激励函数(Stimulus Functions)、状态报告函数(Status Report Functions)以及检测控制函数(Ch 阅读详情
按照软件工程瀑布模型以及其他的一些说法,Test Case应该是以SPEC等文档为依据,在具体测试开始之前就应当完成的。测试中按照Test Plan,Test Case进性测试,并在后续的各种版本中验证Bug,进行相应的回归测试,Test Case似乎不用在做什么改动。但是这更多的只是一种理想状态,实际上很难达到这种流程。原因太多:
1、需求的变化。
2、测试初期对软件的理解其实往往是比较肤浅,随着测试的深入,理解才慢慢深刻起来。这时才会发现其实有
很多的Case还需要增加。
3、SPEC 以及需求文档等等往往也是不全面的,所有的设计并非天衣无缝,往往到了实现阶段才发现问题。
所以我认为Test Plan,Test Case从来就不是一次完成的。从各方面的角度考虑,觉得如下的步骤比较容易实现。
1、Alpha版本之前,也就是测试的第一版之前,对于Test Case不要过早深入细节,首先根据SPEC实现一个合理的Test Case的框架。
A、对于一些共有功能可以参考其他相关AP的Test Case,比如Installer的测试。OCR功能的测试等等。
B、着重于AP的基本功能实现,指明测试的方向。
C、要便于以后添加新的用例。
2、随着测试的深入逐步增加并展开。这里依然要注意以下几点。
A、Test Case并非越多越细越好,关键是在于要广,帮助测试人员开拓思路。
B、Test Case应当对测试有指导意义,留有适当的空间让测试人员去发挥.
C、当情况发生变化时,要及时更新。
 
Gtest之TEST和TEST_F宏的用法 gtest测试 阅读详情

相关推荐

第一次使用uvm相关环境设置以及test_case的启动——UVM

一、TB中需要改动的地方 //1、导入uvm库文件 import uvm_pkg::*; `include "uvm_macros.svh" //2、与sv中不一样的地方是他不会由new()的过程了 initial begin run_test(); end //3、生成fsdb波形文件 initial begin $fsdbDumpfile("sim.fsdb");//生成波形文件 $fsdbDumpvars(0,top_tb,"+all");//确定将top_tb下面的所有信号都进行dump

weixin_42705678的博客 4920

TestCase / test plan / test case

s 测试计划 分析测试需求 制定测试策略 制定测试计划 评审测试计划 测试准备 编写测试案例 评审测试案例 准备测试环境 准备测试数据 准备配置项 测试执行 检查测试准入(环境、数据、配置、案例等) 执行测试案例(多轮) 管理跟踪缺陷 测试报告 分析测试结果 确认测试报告 测试案例,边界值案例 问题:10<= x <=20 边界值案例设计法...

weixin_30920597的博客 308

如何写好Test Plan & Test Case

NULL 博文链接:https://jacky-dai.iteye.com/blog/2389535

开发时写TestCase的一些经验

今天修复完一个业务代码的 bug,手动测试没有问题,但写测试用例出错,在对代码很自信的情况下(因为手动测试过了),我干脆省略了这个步骤,然而偷懒的事情早晚会暴露出来:用 Git 提交到远程时在 Code Review 那里的系统集成测试老是失败,查看日志文件后知道是哪个 TestCase 有问题,所以进入 TestCase 查看代码。 运行 TestCase 后,发现一直报了一个 A 异常(项...

Felicity的博客 6728

思科网络进阶——多生成树协议(MSTP)配置的一课一得

三、实验拓扑1)设计一个网络架构,要有核心层和接入层,都使用思科交换机。2)企业有4个部门,要求这四个部门都可以上网,但分属不同的VLAN中,这样今后可以做其它安全策略以确保网络安全,这些策略如今后学到的访问控制列表ACL。3)网络架构的设计要具有冗余,防止一条线路或一台设备终端导致的业务中断。4)由于硬件冗余而产生的环路要处理好,也就是要在逻辑上(或者说通过配置)防止物理环路的产生。5)不能因为防止物理环路而导致某端口没有流量,这样浪费端口资源及设备间互联的带宽资源。

zhu52010的博客 3398

Halcon棋盘格畸变矫正

通常我们使用的相机都是带有一定的畸变的,只是畸变的大小不同。对于我们常见的测量项目来说,对测量精度的要求很高,通常从相机镜头上进行优化,但是即使镜头优化或者成本原因,造成图像仍有一定的畸变时,我们就可是使用棋盘格标定板,进行畸变矫正。

m0_51559565的博客 3396

测试用例(Test Case)如何编写?

一、什么是测试用例? 测试用例(Test Case)是指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。其内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,最终形成文档。简单地认为,测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,用于核实是否满足某个特定软件需求。 二、测试用例的作用? 1、指导测试的实施 测试用例主要适用于集成测试、...

weixin_44218159的博客 7万+

如何利用DeepSeek自动生成PLC程序?

在工业自动化领域,PLC是核心控制设备,其编程效率和质量直接影响生产线的运行效果。 然而,传统PLC编程依赖工程师手动编写代码,不仅耗时耗力,还容易出错。通过自动生成PLC程序,DeepSeek不仅大幅提升了编程效率,还优化了代码质量。 那么DeepSeek到底能否自动生成PLC程序呢? 有位电气工程师就尝试让DeepSeek设计一套五层电梯控制系统的PLC程序,下面就让我们看看吧。 技术原理:DeepSeek如何实现自动编程DeepSeek利用自然语言处理技术,将工程师输入的文本指令转换为PLC代码。例

Qinmingyue13的博客 6179

Android ApplicationTestCase示例

前面介绍了Android测试的一些理论知识,从本篇开始的几篇将结合ApiDemoTest示例来介绍Android测试的实例。在此之前可以参照Android 测试项目 创建ApiDemos-&gt;tests 测试项目,本项目测试用来测试ApiDemos,主要目的是介绍Android测试框架的使用方法。 当然要测试ApiDemos,事先要创建好项目ApiDemos。下图显示了创建好ApiDemos...

samwong 1966

2025年华为杯中国研究生数学建模竞赛A题 通用神经网络处理器下的核内调度问题 思路+代码

针对通用神经网络处理器下的核内调度问题,我们提出了一套基于分层优化框架的系统性解决方案。该方案首先通过缓存敏感的启发式拓扑排序算法生成最小峰值缓存占用的调度序列,在满足计算图依赖关系的前提下优先选择能够释放或减少缓存占用的节点;随后采用最佳适应算法进行精细化的缓存分配,结合LRU换出策略动态管理多级缓存空间,最小化额外数据搬运量;最后引入多目标遗传算法进行联合优化,在严格控制数据搬运量不显著增加的前提下,通过关键路径分析、流水线并行和数据预取等技术进一步优化总执行时间。

YOLO 786

Codex 自定义模型操作指南:CLI 与桌面客户端双端实操

检查版本 codex --version # 预期输出类似:codex-cli 0.133.0-alpha.1 # 如未安装 npm install -g @openai/codex假设你要接入DeepSeek,在# 临时设置(当前终端会话有效)export DEEPSEEK_API_KEY="sk-你的 DeepSeek API Key"# 永久设置(推荐,写入 shell 配置)

篮球界最会写bug的人;程序猿中打球最菜的人。 454

如何分文件编写Boost Test的test case

如何分文件编写Boost Test的Test Case

Absorb Like A Sponge 2602

3 路由引入

在大型企业网络中,网络规模十分庞大,选用单一的路由协议无法满足网络的需求,因此多种路由协议共存的情况十分常见。或者出于业务逻辑或行政管理的考虑,会在不同的网络结构中设计和部署不同的路由协议,使路由的层次结构更加清晰可控。路由引入是具有方向性的,将路由信息从路由协议A引入到路由协议B(A-to-B),则路由协议B可获知A中的路由信息,但是此时,A还并不知晓B路由协议中的路由信息,除非配置B-to-A的路由引入。表3-1:各种路由协议的优先级。通过路由引入,可以实现路由信息在不同路由协议间传递。

lwljh134的博客 621

Use Case Specifications 与 Test Cases 的关系

在软件工程中,Use Case Specifications(UCS)和 Test Cases(TC)是连接需求与质量保证的核心工件。它们并非孤立的文档,而是构成一个前后呼应、相互验证的有机整体。从和这两个视角来审视,能更深刻地理解其内在联系。

技术日常 2072

【nvidia-B200 生产环境】NVIDIA 570.124.06+Cuda12.8 Ubuntu22.04 nccl-test 一键部署脚本(免修改复制即用)

目录1. 初始化与日志记录2. 安装基础工具与配置更新3. NVIDIA 驱动安装 570.124.064. 安装 Mellanox OFED 24.10-2.1.8.05. 安装 CUDA 12.86. 安装 NCCL 和测试7. 配置 rc.local 和其他优化8. B200 单独步骤9. 最终测试与重启10. 完整生产脚本,复制即可直接使用总结 功能: 设置日志目录和日志文件路径。 使用 命令将标准输出和错误输出同时写入日志文件和终端。 记录脚本开始时间,并计算开始的秒数

jundao1997的专栏 2798

UG\NX二次开发 获取对象的层、颜色、隐藏状态、线宽、线型、高亮显示状态

获取对象的层、颜色、隐藏状态、线宽、线型、高亮显示状态。

王牌飞行员_里海的博客 1982

test-case的ignore与regex特性:如何跳过测试用例并用正则断言

`test-case` 是一款 Rust 过程宏(procedural macro)工具,让你通过一行属性注解就能为函数生成带参数的测试用例。它的 **ignore 特性**能方便地跳过某个测试用例,**regex 特性**则能用正则表达式直接断言返回值。本文带你快速上手这两个实用功能,少写样板代码,让单元测试更整洁。 ## 一、快速准备:安装 test-case 在项目的 [Cargo.to

gitblog_00353的博客 345

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Run Test Case on Spark

本文讲述了如何运行Spark的测试用例

OopsOutOfMemory盛利的博客 5464

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

test-case版本选择指南:理解MSRV策略与依赖锁定

`test-case` 是一款 Rust 过程宏属性(procedural macro attribute)工具库,用一行 `#[test_case(...)]` 就能为测试函数批量生成参数化单元测试。本文将通俗讲清 **test-case 版本选择** 的三个关键点:各版本差异、MSRV(最低支持 Rust 版本)策略对工程的影响,以及如何用 `Cargo.toml` 完成依赖锁定——升级或引入

gitblog_00376的博客 675

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

30分钟掌握Catch2测试组织:从TEST_CASE到SECTION的实战指南

你是否还在为C++测试代码的混乱结构而头疼?是否遇到过修改一个测试用例却影响其他功能的尴尬情况?本文将带你深入理解Catch2测试框架中TEST_CASE与SECTION的设计哲学,掌握模块化测试组织的核心技巧,让你的测试代码既清晰又灵活。读完本文,你将能够: - 正确使用TEST_CASE进行测试单元划分 - 利用SECTION实现测试场景的嵌套组织 - 通过标签系统构建可过滤的测试套件 - 采...

gitblog_01181的博客 752

ABB机器人Test指令

  :需要计算的变量值 :计算后对应值 :语句体   (1)将测试数据与第一个CASE条件中的测试值进行比较。如果对比真实,则执行相关指令。此后,通过ENDTEST后的指令,继续程序执行。 (2)如果未满足第一个CASE条件,则对其他CASE条件进行测试等。如果未满足任何条件,则执行与DEFAULT相关的指令(如果存在)。   执行说明:根据reg1的值,执行不同的指令。如果该值为1、2或3时,则执行routine1。如果该值为4,则执行routine2。否则,打印出错误消息,并停止执行。  (1)TEST

龙猫 7397

Test Case Priority

<br /> <br />Level 0<br />P1<br />SQA Build Acceptance Test or BVT<br />- BVT (Determines the usefulness of this build to test). <br />- Area Base valid Functionality tested at breath <br />- Automated (No manual)<br />Release to SQA – Determines if build

C#-测试 1199

Capl编程xml标签语法(1) —— Test Module/Test Group/Test Case

Capl编程xml标签语法(1) —— Test Module/Test Group/Test Case

蚂蚁小兵 1万+

fast_downscaler实现剖析:simple_photogrammetry_gui里那个基于stb_image的无锁多线程图像缩放器

fast_downscaler 是 simple_photogrammetry_gui 内置的一个基于 stb_image 的无锁多线程图像缩放器:它用不到 100 行 C++ 代码,就把数百张原始照片按指定尺寸批量缩小、统一转成 PNG,为后续摄影测量(Photogrammetry)或高斯泼溅(Gaussian Splatting)流程省下大量内存与时间。本文带你完整看懂它的实现思路。 ##

gitblog_00570的博客 965

Podman 中的 go-flags:基于结构体标签与反射的 Go 命令行参数解析库完全指南

go-flags 是一个功能远超 Go 标准库 `flag` 的命令行参数解析库,它利用结构体、反射(reflection)与结构体字段标签(struct field tags),让开发者用寥寥几行声明即可定义短选项、长选项、必填项、默认值、枚举值、环境变量与子命令。在 Podman 仓库中,它作为 `test/tools` 工具链的间接依赖(v1.6.1),被 go-swagger 等测试工具用

gitblog_00583的博客 361
上一篇: Manits在Windows上的安装备忘
下一篇: 敏捷开发(Agile Development)简介
维恩R
博客等级 码龄20年 18粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值