跳到正文
cccskills
免费在 GitHub 公开中文介绍

mock-best-practices

检查测试中用于替代外部依赖的模拟对象,修正过度模拟和清理遗漏,改进测试的真实性,并确认CI能否持续发现相关问题。

原文查看原文说明

Use when reviewing CI coverage, automated checks, or test strategy related to Follow mocking best practices. Focus on whether the rule is continuously verified, not just documented.

AI 评分90分/ 100查看安装方法

适用场景

  • 审查模拟对象过多的测试
  • 检查测试之间的清理
  • 改进API模拟的真实性
  • 审查CI中的自动检查

中文介绍

功能

此技能检查测试中的模拟对象,即用于替代API、数据库等依赖的对象,帮助测试更贴近实际行为。它会确认是否连业务逻辑也被替换、是否存在不必要的模拟,以及测试结束后是否遗漏清理。修改建议侧重于验证行为和输出,而不是内部执行步骤。

适用场景

适合测试能够通过、生产环境却仍然出现问题的情况,也适合模拟对象不断增加、难以判断测试可信度的情况。除了测试文件,它还会审查CI中的自动检查,指出哪些环节无法自动发现规则违规,或即使检查失败也无法阻止问题再次出现。它也会解释哪些依赖应当模拟,以及这样判断的理由。

使用示例

  • “找出这个测试中不必要的模拟和遗漏的清理。”
  • “使用MSW改进这些API模拟,使其更接近实际行为。”
  • “审查CI能否持续检查模拟相关的问题。”

注意事项

资料提供了在Jest的afterEach中使用jest.restoreAllMocks()的示例,并提出使用MSW进行API模拟。

本介绍由 AI(OpenAI Codex)根据公开的 SKILL.md 撰写。准确的规格请查看下方原文。

客观评估

AI 仅根据 SKILL.md 的内容,从 4 个方面进行了评估。星标数和热度不计入评估。

指令清晰度能否看出何时使用、做什么
A良好明确以测试和CI为对象,检查过度模拟和清理遗漏。
步骤具体性步骤、输入输出和示例是否具体
A良好具体说明删除不必要的模拟、在afterEach中恢复,以及指出CI检查缺口。
安全性发送数据、删除文件、执行命令等是否有说明
A良好主要审查测试和CI,没有执行文件删除或向外部发送数据的指令。
安装难易度所需工具和 API 密钥是否少且有说明
B部分不足提到Jest和MSW,但未提供安装和配置步骤。

总分按每项 A=25 分、B=15 分、C=5 分相加。 由 AI(OpenAI Codex)于 2026年10月23日 评估。仅供参考,安装前请同时查看原文。

如果您认为评估有误,请申请复核

请写明哪一项有误以及原因。无需登录。我们会对照 SKILL.md 重新评估,并在此处更新结果。

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

包含的文件(2)

  • SKILL.md1.7 KB
  • references/rule.md3.9 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Follow mocking best practices

Proper mocking isolates units under test while keeping tests realistic—over-mocking creates false confidence when tests pass but production breaks.

Quick Reference

  • Mock external dependencies (APIs, databases, file system), not business logic
  • Always clean up mocks with jest.restoreAllMocks() in afterEach
  • Use MSW for realistic API mocking without coupling to implementation
  • Test behavior and outputs, not internal implementation details

Check

Review this test file for mocking patterns, checking for over-mocking, missing mock cleanup, and proper mock implementation.

Fix

Improve mocking strategy by removing unnecessary mocks, adding proper cleanup, and mocking at the right level of abstraction.

Explain

Explain mocking best practices including when to mock, what to mock, and common mocking pitfalls.

Code Review

Review tests, CI workflows, and enforcement points related to Follow mocking best practices. Flag exact gaps where the rule is not automatically verified or where failures do not block regressions.


For full implementation details, code examples, and framework-specific guidance, see references/rule.md.

Rule page: https://frontendchecklist.io/rules/testing/mock-best-practices

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

404-page

免费有简介AI 评分 100分

创建并检查自定义404页面,通过搜索、导航和主要页面链接,为访问失效或已迁移页面的访客指明去向,同时核对页面显示内容与HTTP状态码。

  • 创建自定义404页面
  • 完善失效链接的搜索与导航
  • 检查不存在的页面是否返回200
thedaviddias/Front-End-Checklist7.5万2026年10月6日 更新

about-page

免费有简介AI 评分 90分

检查或创建说明网站用途与运营方的介绍页面,核对组织历史、使命、专业能力及联系方式,并检查实际页面输出,找出信息缺漏。

  • 检查现有的网站介绍页面
  • 创建介绍组织与使命的页面
  • 核对页面输出中的运营方信息
thedaviddias/Front-End-Checklist7.5万2026年10月6日 更新

accessibility-testing

免费有简介AI 评分 80分

为页面和共用组件添加自动无障碍测试,检查现有测试的覆盖缺口,并将检查接入持续集成流程,以发现结构、属性问题及修改引入的新问题。

  • 检查共用组件的测试覆盖范围
  • 为页面交互测试添加无障碍检查
  • 在持续集成中运行无障碍检查
thedaviddias/Front-End-Checklist7.5万2026年10月6日 更新

accessible-authentication

免费有简介AI 评分 90分

检查从登录、多因素认证到账户恢复的完整流程,找出禁止粘贴、验证码必须手动输入等使用障碍,并协助改进认证方式。

  • 检查完整登录流程的无障碍性
  • 确认验证码粘贴与自动填充
  • 检查密码重置与账户恢复流程
thedaviddias/Front-End-Checklist7.5万2026年10月6日 更新

accessible-notifications

免费有简介AI 评分 100分

检查表单错误、完成通知和实时更新能否通过屏幕阅读器传达,核对实际显示的HTML属性、通知停留时间及关闭方式,并指出具体问题。

  • 检查表单错误是否被朗读
  • 调整完成通知的显示时间
  • 检查实时通知
thedaviddias/Front-End-Checklist7.5万2026年10月6日 更新

accessible-tables

免费有简介AI 评分 100分

检查表头与数据单元格的对应关系,将 HTML 调整为屏幕阅读器也能传达数据含义的结构。从简单表格到包含合并单元格的复杂表格都可检查。

  • 检查表格的屏幕阅读器支持
  • 检查合并单元格与表头的关联
  • 审查设计系统中的表格
thedaviddias/Front-End-Checklist7.5万2026年10月6日 更新

查看 thedaviddias 的全部技能

报告此技能的问题