- 📌Skill基础信息
- 名称:React 18 Enzyme 转 RTL 迁移工具
- 简称:react18-enzyme-to-rtl
- 来源:社区第三方(TruMedia-Creative)
- 运行宿主:需在支持
skills install命令的 Agent 工具运行(如 MCP 等) - 核心定位:为 React 18 项目提供从 Enzyme 到 React Testing Library(RTL)的完整测试代码迁移方案,解决旧测试框架兼容性问题。
- 🧩内部核心组成
- API 映射文档:
- references/enzyme-api-map.md:覆盖 shallow/mount/find/simulate 等 Enzyme API 的 RTL 等价写法
- references/async-patterns.md:异步测试场景处理(如 waitFor、findBy)
- 标准模板:
```jsx
// 四步迁移范式:
render() → 查询元素 → 模拟交互 → 断言可见输出
```
- 查询优先级规则:明确 RTL 的 8 级查询策略(从
getByRole到getByTestId)
- 🛠安装与启用方式
- 安装命令:
```bash
skills install --user TruMedia-Creative/live-events-dashboard
```
- 前置依赖:
- 需已安装 React 18 和 @testing-library/react
- 项目中需存在 Enzyme 测试文件
- 📋标准工作流
- 开发者定位需迁移的 Enzyme 测试文件
- 查阅
enzyme-api-map.md找到对应 API 的 RTL 替换方案 - 按模板重构测试逻辑(从实现细节测试转向行为测试)
- 使用 RTL 推荐查询优先级验证元素
- 处理异步场景时参考
async-patterns.md
- ⚠️关键限制、缺陷、注意事项
- 不兼容场景:
- 依赖 wrapper.state()/instance() 等内部状态检查的测试需完全重写逻辑
- 非 React 18 项目可能需额外适配
- 迁移成本:非 1:1 转换,需理解 RTL 行为测试哲学
- 生产建议:适合已有 Enzyme 测试的 React 18 升级项目,新项目应直接使用 RTL
- ✅适用场景 & ❌不适合场景
- ✅ 适用:
- React 18 升级过程中需要迁移 Enzyme 测试的团队
- 希望从实现测试转向行为测试的代码库改造
- ❌ 不适合:
- 新项目(应直接使用 RTL)
- 强依赖 Enzyme 内部 API 且无法重构的遗留测试
如何安装
skills install --user TruMedia-Creative/live-events-dashboard通用安装教程:在哪里输入上面的命令
上面的命令本质是在「终端 / 命令行」中调用技能管理器,把该 Skill 下载并注册到你的 AI 工具。各主流工具打开终端的位置不同,按下面操作即可:
- 打开工具自带的终端面板,或系统终端(macOS「终端」、Windows「PowerShell」、Linux「Terminal」)。
- 把上面的安装命令复制进去,回车运行,等待下载与注册完成。
- 重启或重新加载 AI 工具,让新安装的 Skill 被识别。
- 新建对话并触发:直接描述用途,或通过该工具的技能 / 斜杠菜单选中此 Skill。
Claude 桌面版(macOS / Windows)
桌面版没有内置命令行,Skill 需通过 Claude Code CLI 安装。打开系统终端,先执行 npm install -g @anthropic-ai/claude-code,再运行上面的安装命令;完成后完全退出并重新打开 Claude。
Claude Code(终端 CLI)
直接在项目目录的终端里运行上面的命令即可。也可先输入 claude 启动交互界面,再在对话中引用该 Skill(/ 斜杠菜单或直接描述用途)。
VS Code(含 GitHub Copilot)
打开终端面板:菜单「终端 → 新建终端」,或快捷键 Ctrl+`(macOS 为 ⌃+`)。在终端里运行上面的命令;装完后执行「重新加载窗口」(Ctrl+Shift+P → Reload Window),让 Copilot 等扩展识别新技能。
Cursor
底部「终端」面板(Ctrl+`)即是内置终端。粘贴运行上面的命令,完成后在命令面板执行「Reload Window」刷新,再开始对话。
Windsurf
底部「终端」面板运行命令;也可直接使用其内置 Agent 终端,在对话侧执行安装。
其他工具(ChatGPT、本地脚本等)
不支持本地终端的产品,可先在本机终端完成安装,再在对话中描述该 Skill 的能力让其调用;不同工具的命令格式请以其官方文档为准。
风险提示
自动扫描未发现高危命令、隐私抓取或数据外传行为。仍建议安装前快速浏览仓库代码。
Aitishiku.com