CANN/runtime测试框架指南
测试框架指南【免费下载链接】runtime本项目提供CANN运行时组件和维测功能组件。项目地址: https://gitcode.com/cann/runtime返回 Runtime DT用例开发总纲Runtime 仓测试主要基于 gtest结合 gmock、mockcpp、公共桩和模块内 stub/data 组织用例。本文介绍现有测试框架能力帮助开发者优先复用已有设施而不是重复造轮子。测试基类绝大多数用例直接继承testing::Test并在SetUp/TearDown中完成公共初始化与清理。常见职责包括恢复默认 mock 行为创建和销毁模拟器设置和恢复全局芯片类型、device、环境变量校验并清理 mock 对象如果多个用例共享同一套初始化逻辑建议抽出统一 fixture避免重复代码。mock 框架gmock适用于已有 mock 类或接口期望校验场景常见用法包括EXPECT_CALL(...)Mock::VerifyAndClear(...)典型场景ACL 相关接口测试需要验证某个 mock 对象被调用次数和参数的场景mockcpp适用于全局函数、静态函数、成员函数替换场景仓内使用非常普遍。常见接口包括MOCKER(...)MOCKER_CPP(...)MOCKER_CPP_VIRTUAL(...)GlobalMockObject::verify()典型场景打桩dlopen/dlsym/access等系统接口打桩 driver、runtime、device 相关函数替换单例内部调用链公共桩与测试资产tests/depends/tests/depends/提供跨模块复用的公共桩新增测试前应优先检查这里是否已有可复用能力。当前主要包含ge/mmpa/profiling/runtime/slog/tdt/toolchain/模块内stub/、data/、json/很多模块会在自己的测试目录下维护专用测试资产例如tests/ut/msprof/st/stub/tests/ut/msprof/st/data/tests/ut/acl/json/tests/ut/runtime/runtime_c/stub/如果某个 stub 或数据只服务于一个模块应优先放在模块内避免污染公共目录。模拟器与辅助能力部分 ST/UT 会使用模块内现成的模拟器和数据管理能力例如SimulatorMgr()创建/销毁平台模拟器DataMgr()初始化和校验场景数据这类能力通常已经和模块场景耦合新增用例时应优先复用现有 helper不要重复实现一套新的模拟逻辑。构建接入新增测试代码后通常需要修改对应模块的CMakeLists.txt。常见接入方式包括将新文件加入UT_FILES将新目录加入add_subdirectory(...)为新可执行目标补充依赖的 stub、头文件和链接库如果新增了可通过bash tests/build_ut.sh -u target直接执行的模块还需要同步更新tests/build_ut.sh中的 target 映射。覆盖率与 Sanitizer仓内统一入口为tests/build_ut.sh# 覆盖率 bash tests/build_ut.sh -c # AddressSanitizer bash tests/build_ut.sh --asan -u runtime如果新增测试会创建大量临时文件或目录建议在本地同时跑一遍覆盖率或 sanitizer尽早暴露泄漏和残留状态问题。【免费下载链接】runtime本项目提供CANN运行时组件和维测功能组件。项目地址: https://gitcode.com/cann/runtime创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Springboot3+Vue3+MySQL鲜花商城系统源码前后端分离实战

Springboot3+Vue3+MySQL鲜花商城系统源码前后端分离实战

一、项目简介 花时叙鲜花商城是一套基于 Springboot3 Vue3 前后端分离架构的鲜花电商系统。系统分为普通用户端、商家端和管理员端三个角色:普通用户可浏览鲜花、管理购物车、下单支付、发起售后;商家可管理商品、处理订单与售后、查看店铺数据&#x…

2026/7/11 17:20:19阅读更多 →
一键部署Yaydoc到Heroku:零代码实现文档自动化平台

一键部署Yaydoc到Heroku:零代码实现文档自动化平台

一键部署Yaydoc到Heroku:零代码实现文档自动化平台 【免费下载链接】yaydoc Docs! Yay! 项目地址: https://gitcode.com/gh_mirrors/ya/yaydoc Yaydoc是一款强大的文档自动化平台,能帮助开发者轻松实现文档的自动生成与部署。本文将详细介绍如何…

2026/7/11 17:20:19阅读更多 →
3个步骤让Windows电脑变身苹果设备专属投屏接收器

3个步骤让Windows电脑变身苹果设备专属投屏接收器

3个步骤让Windows电脑变身苹果设备专属投屏接收器 【免费下载链接】airplay2-win Airplay2 for windows 项目地址: https://gitcode.com/gh_mirrors/ai/airplay2-win 想象一下这样的场景:你在会议室里准备展示iPhone上的PPT,却发现没有合适的转接…

2026/7/11 17:20:19阅读更多 →
SAP 资产会计配置实战:5步解决折旧表分配与公司代码报错

SAP 资产会计配置实战:5步解决折旧表分配与公司代码报错

SAP资产会计配置实战:从折旧表分配到公司代码报错的深度解析在SAP资产会计(FI-AA)模块的实施过程中,折旧表分配与公司代码配置是基础但极易出错的关键环节。许多顾问在完成这些配置后,常会遇到"公司代码分录不完全…

2026/7/11 18:15:23阅读更多 →
致动终传JS13 Pro手柄DS输入模式深度配置与实战指南

致动终传JS13 Pro手柄DS输入模式深度配置与实战指南

最近在折腾游戏手柄时,发现一个很有意思的现象:很多玩家都在讨论致动终传JS13 Pro这款手柄的DS输入功能到底"好锁"在哪里。作为一个长期关注外设体验的技术爱好者,我决定深入测试一下这款手柄的真实表现。所谓"好锁"&…

2026/7/11 18:15:23阅读更多 →
Typora插件如何实现PDF批量导出与自定义导出功能:终极解决方案

Typora插件如何实现PDF批量导出与自定义导出功能:终极解决方案

Typora插件如何实现PDF批量导出与自定义导出功能:终极解决方案 【免费下载链接】typora_plugin Typora Plugin. Feature Enhancement Tool | Typora 插件,功能增强工具 项目地址: https://gitcode.com/gh_mirrors/ty/typora_plugin 作为一款广受欢…

2026/7/11 18:15:23阅读更多 →
GLM-5V-Turbo:前端工程中的像素级视觉接口层

GLM-5V-Turbo:前端工程中的像素级视觉接口层

1. 项目概述:这不是一个“升级版”,而是一次定位重构的实战手记GLM-5V-Turbo上线那天,我盯着智普官网的公告刷新了三遍,不是因为激动,而是因为困惑——它到底想解决什么问题?不是单纯比谁快、谁参数多、谁上…

2026/7/11 18:15:23阅读更多 →
TLA2518与PIC18F26K20构建高精度多通道ADC系统

TLA2518与PIC18F26K20构建高精度多通道ADC系统

1. 项目背景与核心需求在工业控制、医疗设备和消费电子等领域,模拟信号到数字信号的可靠转换一直是系统设计的关键环节。TLA2518作为德州仪器推出的12位精度、1MSPS采样率的8通道ADC芯片,配合PIC18F26K20这款高性价比的8位MCU,能够构建一个稳…

2026/7/11 18:15:22阅读更多 →
工业控制系统中电气隔离与TLP241A光耦应用解析

工业控制系统中电气隔离与TLP241A光耦应用解析

1. 电气隔离在工业控制系统中的核心价值工业控制系统中,电气隔离就像给电路装上了一道"防火墙"。我曾在多个工业现场亲眼目睹过没有隔离设计的系统在电机启停瞬间崩溃的场景。TLP241A光耦与STM32F427ZI的组合,正是为了解决这类痛点而生。电气隔…

2026/7/11 18:10:22阅读更多 →
从GitHub安全案例解析常见漏洞与防护实践

从GitHub安全案例解析常见漏洞与防护实践

1. 项目概述:从GitHub Trending看安全实战 最近在GitHub Trending上看到一个项目,叫 skills4/skills ,它因为一些安全漏洞案例被大家讨论。这其实是一个挺典型的场景:一个旨在展示或教授某种技能的仓库,本身却成了安…

2026/7/10 12:10:00阅读更多 →
MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

# MLT 2026启示:因果推理与概率建模驱动下一代LLM应用## 一、背景与挑战:从“黑箱预测”到“可信推理”2026年6月,第7届机器学习与趋势国际会议(MLT 2026)将在悉尼召开。会议议程中,“因果与可解释机器学习…

2026/7/11 15:18:12阅读更多 →
通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

1. 项目概述与漏洞背景最近在梳理一些历史OA系统的安全风险时,通达OA v11.6版本中的一个老漏洞又进入了我的视线。这个漏洞位于/general/bi_design/appcenter/report_bi.func.php文件中,是一个典型的SQL注入点。虽然这个漏洞的利用方式看起来并不复杂&am…

2026/7/11 15:11:32阅读更多 →
Premiere Pro 2025安装失败原因与AGSIS验证绕过指南

Premiere Pro 2025安装失败原因与AGSIS验证绕过指南

1. 为什么2025版PR安装比以往更“磨人”?——从弹窗警告到路径陷阱的真实处境 Premiere Pro 2025版不是简单的一次版本迭代,它是一道分水岭。我从去年底开始帮影视工作室、高校剪辑实验室和自由职业者部署2025环境,累计处理了137台设备&#…

2026/7/11 0:03:43阅读更多 →
5款实用macOS系统优化工具:让你的Mac运行更流畅更高效

5款实用macOS系统优化工具:让你的Mac运行更流畅更高效

5款实用macOS系统优化工具:让你的Mac运行更流畅更高效 【免费下载链接】open-source-mac-os-apps 🚀 Awesome list of open source applications for macOS. https://t.me/s/opensourcemacosapps 项目地址: https://gitcode.com/gh_mirrors/op/open-so…

2026/7/11 0:03:43阅读更多 →
5分钟完全掌握:ComfyUI ControlNet预处理器终极使用指南

5分钟完全掌握:ComfyUI ControlNet预处理器终极使用指南

5分钟完全掌握:ComfyUI ControlNet预处理器终极使用指南 【免费下载链接】comfyui_controlnet_aux ComfyUIs ControlNet Auxiliary Preprocessors 项目地址: https://gitcode.com/gh_mirrors/co/comfyui_controlnet_aux 想要让AI图像生成真正听从你的指挥吗&…

2026/7/11 0:03:43阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/11 16:20:28阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/10 22:20:33阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/11 18:12:23阅读更多 →