---
name: test-creator
version: 1.0.0
category: 生活与工具
trigger_words:
tags:
platform: coze
source: DeepseekModel
source_url: https://deepseekmodel.com/skill?id=shenjingnan-xiaozhi-client-agents-skills-test-creator-skill-md
---

name test-creator description 测试创建技能，用于生成符合项目标准的测试用例 测试创建技能 我是一个测试创建专家，专门为 xiaozhi-client 项目生成符合标准的测试用例。 我的能力 当你需要创建测试用例时，我会： 分析测试需求 - 确定测试范围、场景和 Mock 策略 生成测试文件 - 创建符合项目标准的完整测试文件 确保覆盖率 - 满足 80% 覆盖率要求 执行质量检查 - 验证测试代码质量 使用方式 使用格式： /test-create [测试类型] [目标文件或模块] 示例 ： /test-create mcp-tool "core/unified-server" /test-create cli-command "cli/commands/start" /test-create transport "transports/websocket-adapter" /test-create utility "utils/config-parser" /test-create type "types/xiaozhi-config" /test-create service "managers/connection-manager" 支持的测试类型 mcp-tool - MCP 工具测试 测试重点 ：参数验证、API 调用、设备查找、错误处理 Mock 对象 ：外部服务、设备状态数据 service - 服务类测试 测试重点 ：业务逻辑、数据转换、异常处理 Mock 对象 ：外部 API、数据库连接 utility - 工具函数测试 测试重点 ：输入输出、边界值、类型安全 Mock 对象 ：通常无需 Mock type - 类型定义测试 测试重点 ：类型构造函数、类型守卫、错误类型 Mock 对象 ：根据具体需求定 cli-command - CLI 命令测试 测试重点 ：参数解析、配置加载、错误输出 Mock 对象 ：process.argv、console.log、文件系统 transport - 传输层适配器测试 测试重点 ：连接建立、消息收发、错误处理、重连 Mock 对象 ：WebSocket、HTTP 服务器 测试文件结构 import { describe, expect, it, beforeEach, afterEach, vi } from "vitest" ; // 导入要测试的模块（使用项目路径别名） import { TargetClass , TargetFunction } from "@/module/target-module" ; // 导入类型定义 import type { TargetType } from "@/module/target-module" ; describe ( "测试描述" , () => { beforeEach ( () => { // 测试前的准备工作 }); afterEach ( () => { // 测试后的清理工作 vi. clearAllMocks (); }); describe ( "功能分组" , () => { it ( "应该正确处理基本场景" , async () => { // 基础功能测试 }); it ( "应该正确处理边界条件" , async () => { // 边界条件测试 }); it ( "应该正确处理错误情况" , async () => { // 错误处理测试 }); }); }); 测试覆盖要求 基于 xiaozhi-client 项目覆盖率目标（80% 分支、函数、行、语句）： 必须覆盖的场景 正常流程 ：所有主要功能路径 边界条件 ：最小值、最大值、空值、null/undefined 错误处理 ：所有异常分支和错误码 异步操作 ：Promise、async/await 的各种状态 测试数据设计 有效数据 ：符合预期的正常输入 无效数据 ：各种格式错误的输入 边界数据 ：临界值和极值 特殊数据 ：null、undefined、空字符串、空数组 测试执行命令 # 运行所有测试 pnpm test # 运行特定测试文件 pnpm test src/server/{module}/{target}.test.ts # 生成覆盖率报告 pnpm test :coverage 质量保证检查 pnpm typecheck # TypeScript类型检查 pnpm lint # 代码规范和格式检查 pnpm spellcheck # 拼写检查 pnpm check:all # 运行所有质量检查 测试最佳实践 测试命名 使用描述性的测试名称 采用中文描述 包含测试的具体场景和预期结果 测试结构 使用 AAA 模式：Arrange（准备）、Act（执行）、Assert（断言） 每个测试用例只验证一个行为 使用有意义的测试数据 Mock 使用 只 Mock 外部依赖，不测试实现细节 Mock 行为应该真实且一致 在测试后清理 Mock 状态