Token导航 LogoToken导航TokenDH.com
研究检索只读github未标认证来源可访问clear审计异常

qt-unittest-makeqt 单元测试 make

Agent Skill

用于辅助测试设计、自动化测试、用例整理和回归验证。它适合让 Agent 编写单元测试、端到端测试、测试计划或根据失败日志定位问题。使用时需要确认项目测试框架、运行命令和夹具数据,避免为了通过测试而改坏真实逻辑;涉及浏览器或外部服务时,应区分本地模拟、测试环境和生产环境。

总安装

1,310

周安装

53

GitHub Stars

6

下载量

411
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:qt-unittest-make(qt 单元测试 make)
来源仓库:https://github.com/re2zero/deepin-skills
仓库路径:skills/qt-unittest-make
安装命令:
npx skills add https://github.com/re2zero/deepin-skills --skill qt-unittest-make
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/re2zero/deepin-skills --skill qt-unittest-make

简介

qt-unittest-make 用于辅助测试设计、自动化测试与回归验证,适合让 Agent 编写单元测试脚本或分析构建结果。

  • 可支持多平台编译与测试套件集成,提升代码质量保障效率。
  • 通过 npx skills add 命令从 GitHub 安装,需确认是否涉及本地编译或环境变量设置。
  • 建议结合项目构建配置文件使用,避免误改核心依赖关系。
  • 涉及 CI/CD 流程时应评估对流水线稳定性的影响。

SKILL.md

Qt Unit Test Generator

Overview

Core principle: 使用 LSP 精确分析类结构,生成 100% 函数覆盖率的测试用例,并强制验证构建成功。

架构模式: Skill 路由 + 子 Agent 全栈执行。子 Agent 负责所有具体工作,Skill 仅负责调用和结果反馈。

关键特性: 智能 CMake 合并、增量更新支持、严格的构建验证、详细的错误处理。

Iron Laws

  1. 仅使用 Google Test: 测试框架固定为 GTest,不支持 Qt Test
  2. 100% 函数覆盖率: 每个 public/protected 函数必须至少一个测试用例
  3. 智能 CMake 合并: 根据项目实际情况优化合并,确保通用性
  4. 支持增量更新: 对比现有测试,补全未覆盖函数
  5. 必须验证构建: 生成后必须编译成功才能报告完成
  6. 编译失败必须修正: 每个错误最多重试 3 次,最大循环 10 次

When to Use

触发条件:

  • 用户请求为模块生成单元测试:为 src/lib/ui 模块创建单元测试
  • 用户请求为类生成测试:为 MyClass 生成测试
  • 用户请求补全测试:为 MyClass 补全测试

不使用此技能时:

  • 用户请求生成测试框架(使用 qt-unittest-build
  • 用户请求修复测试失败(使用 systematic-debugging
  • 用户请求分析测试覆盖率(使用其他工具)

执行流程

步骤 1: 检查测试框架

验证 autotests/CMakeLists.txtautotests/3rdparty/stub/ 存在。如不存在,提示用户先运行 qt-unittest-build

步骤 2: 分析类结构

模块批量生成: glob 扫描目录所有 .h/.hpp,提取类名。

单个类: 直接分析指定类。

使用 LSP 工具:

  • lsp_document_symbols - 提取类结构
  • lsp_goto_definition - 读取函数实现
  • lsp_find_references - 查找依赖

步骤 3: 调用子 Agent(MUST DO)

重要: 必须调用子 Agent,不能跳过!

子 Agent 位置: agent/unittest-generator.md

调用方式:

使用 task 工具调用子 Agent:

task(
    description="生成单元测试代码",
    prompt="完整的任务说明,包括:
- 目标模块或类
- 测试框架要求(Google Test)
- 函数覆盖率要求(100%)
- 验证构建要求",
    subagent_type="general"
)

为什么需要子 Agent:

  • 独立上下文: 为单个类或小模块生成测试时,独立上下文避免污染
  • 并行执行: 为多个类批量生成测试时,可以 fork 多个子 Agent 并行执行,提高效率
  • 任务隔离: 子 Agent 失败不影响主 Agent,便于错误处理

调用时机:

  • 模块批量生成: 为每个类调用一个子 Agent(并行)
  • 单个类生成: 调用一个子 Agent
  • 增量更新: 调用子 Agent 分析差异

步骤 4: 等待子 Agent 完成

监听子 Agent 的执行结果:

  • 收集生成的测试文件
  • 检查验证构建结果
  • 记录遇到的错误(如果有)

步骤 5: 反馈用户

根据子 Agent 的结果反馈用户:

  • 如果成功:报告生成的测试文件和覆盖率
  • 如果失败:报告详细的错误信息和修正建议

Red Flags

  • ❌ 使用 Qt Test 框架
  • ❌ 覆盖率不足 100%
  • ❌ 硬编码 CMake 模板
  • ❌ 不验证构建
  • ❌ 不支持增量更新
  • ❌ 编译失败仍报告完成
  • ❌ 跳过子 Agent 调用(直接手动工作)

Quick Reference

测试文件命名: test_myclass.cpp

测试类命名: MyClassTest

测试用例命名: {Feature}_{Scenario}_{ExpectedResult}

LSP 工具: lsp_document_symbols, lsp_goto_definition, lsp_find_references

Stub 模式: &Class::method, VADDR(Class, method), static_cast<...>

编译重试逻辑: 每个错误最多重试 3 次,最大循环 10 次

子 Agent 调用

必须使用 task 工具调用子 Agent:

task(
    description="生成单元测试代码",
    prompt="完整任务描述,包括目标、要求、验证流程",
    subagent_type="general"
)

子 Agent 执行内容:

  • 分析项目结构(LSP)
  • 生成测试文件(100% 覆盖率)
  • 智能合并 CMake
  • 验证构建(每个错误重试 3 次,最大循环 10 次)

为什么需要子 Agent:

  • 独立上下文,防止污染
  • 并行执行,提高效率
  • 任务隔离,便于错误处理

常见错误

错误原因修复
测试框架不存在未运行 qt-unittest-build提示用户先运行框架构建技能
覆盖率不足未分析所有函数确保 lsp_document_symbols 提取完整
CMake 合并失败硬编码模板使用 AI 智能合并,根据项目实际情况优化
编译失败Stub 签名错误使用 LSP 获取精确签名
编译失败仍报告完成跳过验证或验证不严谨必须编译成功才能报告用户
多个错误未修正全局重试 3 次不足每个错误重试 3 次,最大循环 10 次

Rationalization Table

ExcuseReality
"直接手动工作更快"手动工作无法保证 100% 覆盖率和构建验证,子 Agent 是强制要求
"跳过子 Agent 调用"违反技能的铁律,必须调用子 Agent
"编译失败也可以报告完成"违反强制构建验证要求,必须编译成功才能报告
"全局重试 3 次就够了"每个错误重试 3 次,不是全局 3 次
"覆盖率 80% 就可以了"铁律要求 100% 函数覆盖率,无例外
"Qt Test 也一样"技能固定使用 Google Test,不支持 Qt Test

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Claude Code

29.2%
按下载量换算120

OpenCode

21.37%
按下载量换算88

Antigravity

15.7%
按下载量换算65

windsurf

11.49%
按下载量换算47

Codex

7.92%
按下载量换算33

trae

3.45%
按下载量换算14

安全审计

Gen Agent Trust Hub

未通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。

来源信息

继续浏览同类 Skills