已关闭
[Requirement|需求建议]: 重构 TSD 单元测试并提升测试有效性 #800
DevLeev创建于  8月7日关闭于  8月7日
DevLeev成员
8月7日 创建

Backgroud(背景信息)

当前 TSD 单元测试集中在单一目录,与 src/tsd 的模块结构不一致,部分生产实现缺少直接归属的 UT;同时存在重复、弱断言、仅验证 mock、全局状态污染及冗余 stub,维护和回归定位成本较高。

本需求重构 TSD UT,使测试目录与生产源码保持一一对应,并建立用例长度、有效断言、命名、隔离和覆盖率门禁。

Origin(信息来源)

Runtime TSD UT 质量审计及 PR #4085: https://gitcode.com/cann/runtime/pull/4085

Benefit / Necessity (价值/作用)

  1. 37 个 TSD 生产 .cpp 与 37 个 source-owned UT 文件一一对应,便于定位和维护。
  2. 清理重复、无效用例及无生产引用的 UT stub,降低维护成本。
  3. 所有 880 个测试用例 NBNC 不超过 50,且均具备有效断言和明确名称。
  4. 强化返回值、出参、状态、调用参数和资源清理验证,提高回归发现能力。
  5. 严格 37 个生产 .cpp 行覆盖率达到 90.9%,并通过全量及 shuffle/repeat 验证。

Design(设计方案)

  • src/tsd 目录镜像重排 tests/ut/tsd,保持单一 tsd_client_utest target。
  • CMake 显式挂载 37 个生产源文件和 37 个对应 UT 文件。
  • 删除重复、无 oracle、mock-only 和仅 UT 使用的冗余代码。
  • 修正断言、用例名称、mock 生命周期、环境变量和单例状态恢复。
  • UT target 启用与生产一致的编译路径,并通过 BUILD_RPATH 隔离已安装 CANN 的同名库。
  • 验收标准:880/880 通过,NBNC 最大 46,严格行覆盖率 90.9%。
likedislike
DevLeev成员
8月7日 评论:

/assign

likedislike
CANN-robotCANN-robot成员
8月7日 将 LiWei79 设为负责人
DDevLeev成员
8月7日 issue状态由 进行中 改变为 已完成
DDevLeev成员
8月7日 关闭了 issue
CANN-robotCANN-robot成员
8月7日 添加了label:resolved