React Native 测试助手
帮助 AI 编写可靠的 React Native 组件测试
该技能仅提供测试编写指导,不请求权限、不执行外部操作、不处理凭据或敏感数据,风险面较低。扣分原因是未明确数据流、依赖安全、用户确认、回滚或来源核验机制;发布者身份也未被验证。
版本检测、v13/v14 分流、查询和异步规则较完整,且引用了多个参考文件。扣分原因是静态审查未执行测试,缺少项目级复现、异常输入处理和可诊断失败反馈;部分行为依赖实际项目配置。
目标用户、React Native 组件测试场景、触发词和主要覆盖范围清晰,并区分 RNTL v13 与 v14。扣分原因是未明确非适用场景、输入输出边界及中文使用说明;不过核心功能不依赖海外在线服务,因此未因中国网络可达性额外扣分。
文档采用主指南加版本参考和反模式的分层结构,包含大量示例、限制提示及 MIT 许可证上下文。扣分原因是技能自身缺少安装说明、版本历史、变更日志、维护责任人与明确更新路径。
内容覆盖常见查询、交互、断言、异步模式和自定义渲染,示例可直接改写到测试中,具有明显实用价值。扣分原因是没有提交的代表性测试套件或执行证据,且版本与项目配置差异可能仍需人工校验。
版本化参考文件和具体 API 签名使关键建议具备一定可审计性。扣分原因是未提供第三方来源、CI、提交测试或独立复现证据,无法静态确认 API 断言和迁移结论的准确性。
- 未执行任何代码或测试;评分不代表 RNTL API 内容已被独立验证。
- 使用前应以项目实际 package.json、React 版本、测试渲染器和已安装 RNTL 版本为准。
- 建议补充来源引用、维护责任、变更日志及覆盖 v13/v14 关键路径的 CI 测试。
这个 Skill 能做什么,适合哪些场景?
这是一个面向 React Native 组件测试的 Agent Skill,使用 React Native Testing Library(RNTL)v13 或 v14。它覆盖渲染、screen 查询、Jest 匹配器、userEvent、fireEvent、waitFor 和异步测试模式。技能会根据项目 package.json 中的 RNTL 版本选择对应参考资料。它适合需要编写、审查或修复 React Native 组件测试的开发者。
读取项目 package.json 以识别 @testing-library/react-native 的 v13 或 v14 版本,并据此加载版本专属 API 参考文件;指导 AI 使用 render、screen 查询、userEvent、fireEvent、waitFor、自定义 wrapper 和 RNTL Jest 匹配器生成或修改测试代码;同时提示查询优先级、异步行为和常见反模式。
- React Native 开发者为组件新增基于 RNTL 的测试时,使用它选择合适的渲染和查询模式。
- 维护 React 18 与 RNTL v13 项目时,使用它遵循同步 API 和版本专属参考。
- 升级到 React 19 与 RNTL v14 后,使用它处理异步渲染和迁移差异。
- 审查包含 RNTL 导入或测试文件的代码时,使用它检查查询、事件和 waitFor 的用法。
- 需要测试按钮、输入框、可访问性状态或异步结果时,使用它选择对应查询和 Jest 匹配器。
这个 Skill 有哪些优点和局限?
- 明确区分 RNTL v13 与 v14,覆盖 React 18 和 React 19+ 的差异。
- 提供具体的查询优先级、事件交互模式和异步测试规则。
- 包含可直接参考的 userEvent、waitFor、自定义渲染和 Jest 匹配器示例。
- 强调可访问性查询和 RNTL 匹配器,有助于减少脆弱测试。
- 只覆盖 React Native 组件测试,不是完整的端到端测试或原生模块测试方案。
- 源材料未提供该技能自身的测试套件、支持平台矩阵或实测项目清单。
- 使用细节依赖仓库中的版本参考文件,但提供的材料未包含这些文件的完整内容。
如何安装这个 Skill?
该技能位于 https://github.com/callstackincubator/agent-skills 的 plugins/vendored/.agents/skills/react-native-testing/SKILL.md。README 说明仓库支持通过 .agents/plugins/marketplace.json 使用 Codex bundled plugins,但没有提供该技能的独立安装命令。
如何使用这个 Skill?
将该技能安装或放入兼容 Agent Skills 的技能目录后,在涉及 React Native 组件测试的任务中触发。例如:"使用 RNTL v14 为这个 React Native 组件编写测试",或"审查这个 RNTL 测试并修复异步查询问题"。使用前应确保项目 package.json 声明了 @testing-library/react-native v13 或 v14。