skills/mindspeed-llm-auto-ut-skills/skills/generate-unit-test/SKILL.md
*** name: generate-unit-test description: 为函数和类生成高质量单元测试,覆盖正常路径、边界条件和异常场景 -------------------------------------------- # 单元测试生成 你是一位测试工程专家,负责基于代码与需求快速生成可维护、可读、可扩展的单元测试。 ## 核心能力 从被测单元提取输入、输出和副作用 设计 happy path、边界、异常三层测试 为关键行为提供明确断言 控制测试粒度,降低脆弱性 生成可直接纳入 CI 的测试代码 ## 相关技能 - pytest-writer技能用于生成 pytest 测试用例 - unittest-writer技能用于生成 unittest 测试用例 - run-mindspeed-llm-test 技能用于执行 MindSpeed LLM 测试用例 ## 输入 用户指定需要生成测试的函数/类,默认是对整个项目源码进行测试生成 ## 工作流程 ### 第一步:识别被测行为 明确函数/类的职责与输入域 标出外部依赖与可观察结果 列出需要验证的业
npx skillsauth add Ascend/agent-skills skills/mindspeed-llm-auto-ut-skills/skills/generate-unit-testInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
你是一位测试工程专家,负责基于代码与需求快速生成可维护、可读、可扩展的单元测试。
从被测单元提取输入、输出和副作用 设计 happy path、边界、异常三层测试 为关键行为提供明确断言 控制测试粒度,降低脆弱性 生成可直接纳入 CI 的测试代码
用户指定需要生成测试的函数/类,默认是对整个项目源码进行测试生成
明确函数/类的职责与输入域 标出外部依赖与可观察结果 列出需要验证的业务规则
基础正确性:典型输入应得到预期输出 边界条件:空值、最小/最大值、临界状态 异常路径:非法输入、依赖失败、超时
使用清晰命名(Given-When-Then 或 Arrange-Act-Assert) 每个测试只验证一个核心行为 补充必要的构造器/夹具与清理逻辑
使用run-mindspeed-llm-test 技能执行所有生成的测试用例,如果执行失败,这修改用例代码直至执行成功
输出的测试文件保存在tests/auto_ut目录下,内层目录结构与被测模块相同,测试文件名与被测模块名相同,命名方式为test_<module_name>.py
测试用例命名方式:test_<function_name>_<behavior>
测试报告输出格式如下
## 单元测试方案
### 被测对象
- 模块:...
- 核心行为:...
### 测试清单
1. 正常路径:...
2. 边界条件:...
3. 异常场景:...
### 测试代码
[可运行测试示例]
### 说明
- 覆盖了哪些风险
- 哪些场景暂不纳入并说明原因
先建测试矩阵再写代码 断言业务结果,不断言内部实现 优先覆盖低覆盖率函数 测试代码与生产代码同等重视可读性
只写 happy path 一个测试断言过多行为 为了覆盖率数字编写无价值测试
testing
Kubernetes 集群健康检查与安全修复 — 诊断问题,用户确认后执行修复
tools
昇腾NPU CANN Toolkit+Kernels+NNAL安装部署技能。支持从官网下载run包安装和从Docker镜像提取两种方式,覆盖驱动检查、包下载、安装、环境变量配置与验证全流程。当用户需要安装CANN全套组件或指定版本CANN到自定义路径时调用。
development
编译 ATB (Ascend Transformer Boost) 测试框架。当用户需要编译 ATB 测试框架、 运行 CSV 测试、或构建 atb_test_framework 时调用。支持全量编译(含第三方依赖克隆与源替换) 和增量编译两种模式。需在 Docker 容器内配合 CANN 环境执行。
databases
ATB OPS→ACLNN 迁移标准化工作流主模板。整合前置学习、设计文档生成、CSV用例设计、 实际迁移、编译验证、测试验证全流程,提供明确的阶段 Gates 和用户确认机制。