Token导航 LogoToken导航

Agent Skill · 研究检索

unit-testing(单元测试)

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

unit-testing 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为权限未标注;许可证为 MIT,第三方扫描已通过,按安装量在研究检索类的 73,675 个 Skill 里排第 56,028。

总安装 465周安装 19GitHub Stars 218下载 149核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT

安装方式

通过对话安装

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

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

命令行安装

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

skills.shnpx skills
npx skills add https://github.com/leavesfly/jimi --skill unit-testing

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

unit-testing 用于辅助测试设计、自动化测试、用例整理和回归验证,适合编写单元测试、端到端测试或根据失败日志定位问题。它能帮助 Agent 生成测试计划、维护夹具数据,并区分本地模拟、测试环境与生产环境。使用时需确认项目测试框架、运行命令和夹具路径,避免为了通过测试而破坏真实逻辑。

安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写操作。适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

来源仓库内路径:skills/unit-testing

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/leavesfly/jimi --skill unit-testing;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    权限没有明确标注,第一次使用时只给一个无关紧要的任务,观察它到底读了哪些文件和网络。

常见问题

6 条

unit-testing 怎么安装?

在终端执行 npx skills add https://github.com/leavesfly/jimi --skill unit-testing。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

unit-testing 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

unit-testing 需要什么权限?

权限级别没有明确标注。第一次使用时建议只给无关紧要的任务,观察它实际读写了哪些内容。

unit-testing 是免费的吗?

来源标注的许可证是 MIT。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

unit-testing 用的人多吗?

公开数据是累计安装 465 次,近一周安装 19 次,下载 149 次,GitHub 218 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

unit-testing 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 3 个目录同时收录,说明这个 Skill 流传比较广。
  • 许可证明确为 MIT,商用和分发边界好判断。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。
  • 需要许可证清楚、并且有第三方扫描结果的团队项目。

不太适合

  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
unit-testing

单元测试 · 本页

465218权限未标注MIT通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

单元测试技能包

编写高质量单元测试的专业指南,基于JUnit 5和Mockito框架。

测试原则

  1. 测试独立性:每个测试用例应独立运行,不依赖其他测试的执行顺序或结果
  2. 单一职责:每个测试只验证一个具体的行为或场景
  3. 命名清晰:测试方法名应清楚描述测试场景,推荐格式:方法名_测试场景_期望结果
  4. 覆盖全面:包括正常场景、边界条件、异常情况三个维度

测试结构(AAA模式)

每个测试用例应遵循Arrange-Act-Assert三段式结构:

@Test
void calculateTotal_withValidItems_returnsCorrectSum() {
    // Arrange - 准备测试数据和依赖
    List<Item> items = Arrays.asList(
        new Item("A", 10.0),
        new Item("B", 20.0)
    );
    Calculator calculator = new Calculator();

    // Act - 执行被测试的方法
    double result = calculator.calculateTotal(items);

    // Assert - 验证结果是否符合期望
    assertEquals(30.0, result, 0.001);
}

常用断言

JUnit 5断言

  • assertEquals(expected, actual) - 验证相等性
  • assertNotNull(actual) - 验证非空
  • assertTrue(condition) / assertFalse(condition) - 验证布尔条件
  • assertThrows(Exception.class, () -> {...}) - 验证异常抛出
  • assertAll() - 批量断言,全部执行
  • assertTimeout(duration, () -> {...}) - 验证执行时间

AssertJ流式断言(推荐)

assertThat(result)
    .isNotNull()
    .isInstanceOf(User.class)
    .extracting(User::getName)
    .isEqualTo("张三");

Mock使用指南

基本Mock

@ExtendWith(MockitoExtension.class)
class UserServiceTest {

    @Mock
    private UserRepository userRepository;

    @InjectMocks
    private UserService userService;

    @Test
    void getUser_whenExists_returnsUser() {
        // 定义Mock行为
        when(userRepository.findById(1L))
            .thenReturn(Optional.of(new User("张三")));

        // 执行测试
        User user = userService.getUser(1L);

        // 验证结果
        assertEquals("张三", user.getName());

        // 验证方法调用
        verify(userRepository).findById(1L);
    }
}

Mock注意事项

  • 使用@Mock注解标记依赖
  • 使用@InjectMocks自动注入Mock对象
  • 使用when().thenReturn()定义Mock返回值
  • 使用verify()验证方法是否被调用
  • 使用any()、eq()等匹配器灵活匹配参数

边界条件测试清单

必须测试的边界条件:

  • 空值(null):输入参数为null的情况
  • 空集合:空列表、空Map、空字符串
  • 单元素集合:只有一个元素的集合
  • 大量数据:大数据量场景的性能和正确性
  • 边界值:最大值、最小值、0、-1等
  • 特殊字符:空格、换行符、特殊符号
  • 并发场景:多线程并发访问

测试覆盖策略

方法级覆盖

每个public方法至少包含以下测试:

  • 正常情况测试
  • 异常情况测试(参数非法、状态异常等)
  • 边界条件测试

分支覆盖

  • if/else的每个分支都应被测试覆盖
  • switch/case的每个case都应测试
  • 循环的边界条件(0次、1次、多次)

最佳实践

  1. 测试先行:可能的话采用TDD(测试驱动开发)
  2. 快速执行:单元测试应该快速执行,避免依赖外部资源
  3. 可重复:测试结果应该稳定可重复,不依赖执行环境
  4. 自动化:集成到CI/CD流程中自动执行
  5. 定期重构:测试代码也需要重构和维护

反模式(避免)

❌ 测试私有方法(应该测试public接口) ❌ 测试第三方库(应该Mock掉) ❌ 测试getter/setter(没有必要) ❌ 过度Mock(导致测试脆弱) ❌ 忽略异常测试

平台分布

Claude Code

28.26%
按下载量换算42

OpenCode

21.24%
按下载量换算32

trae

16.95%
按下载量换算25

Codex

11.03%
按下载量换算16

Cursor

6.89%
按下载量换算10

Antigravity

3.78%
按下载量换算6

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

权限未标注

当前来源未能明确判断权限范围,默认进入异常复核队列。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

继续浏览同类 Skills