mcpField
A
android-testing-unit

android-testing-unit

github.com/krutikjain测试与质量14327 次安装31 周前更新
代码仓库

关于 android-testing-unit

用于为 reducer、用例、repository 和生命周期安全的状态持有器设计精简 Android 单元测试的技能。它强调可复现检查与明确的失败处理,并将更广泛的 UI 测试交由相关技能处理。

主要功能

  1. 01精简的 Android 单元测试策略
  2. 02Reducer 与用例测试指导
  3. 03Repository 与状态持有器测试
  4. 04可复现的 CI 检查
  5. 05明确的失败修复建议
  6. 06衔接相关测试技能

适用场景

  1. 01测试 reducer 和格式化逻辑
  2. 02通过单元测试验证 repository 行为
  3. 03无需仪器测试覆盖同步失败
  4. 04区分单元测试与 UI 测试需求

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/krutikjain/android-agent-skills --skill android-testing-unit

安装后在 Claude Code 中输入/android-testing-unit确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
openai.yaml
references/
official-links.md
patterns.md
scenarios.md
scripts/
run_examples.sh

详细介绍

Android 单元测试

适用场景

  • 当请求涉及以下内容时使用此技能:Android 单元测试策略、Android ViewModel reducer 测试、Android repository 单元测试。
  • 主要目标:为 reducer、用例、repository 和生命周期安全的状态持有者编写快速、专注的 Android 单元测试。
  • 范围扩大时交接给以下技能:
  • android-testing-ui
  • android-ui-states-validation

工作流

  1. 确定风险范围:正确性、安全性、性能、测试深度或发布自动化。
  2. 选择范围尽可能小、同时仍能发现可能回归问题的验证策略。
  3. 为工作流添加检测,让失败信息具有可操作性,而不只是显示红色。
  4. 在示例应用和打包产物上运行相关检查。
  5. 明确记录剩余风险、后续工作和负责技能。

防护原则

  • 优先选择 CI 中可复现的检查,而不是一次性的本地突击处理。
  • 失败时提供明确的修复路径,而不是含糊的质量门槛。
  • 不要在示例和测试夹具中放入密钥、签名材料和生产凭据。
  • 将性能和安全工作视为需要证据支撑的工程任务,而不是道听途说。

反模式

  • 只增加测试数量,却没有提高有效信号。
  • 发布无人能够复现的基准测试或安全扫描。
  • 在构建逻辑中硬编码发布凭据。
  • 使用没有用户影响解读的合成指标。

示例

正常流程
  • 场景:在两个夹具应用中,通过有针对性的本地测试覆盖 reducer 和格式化逻辑。
  • 命令:cd examples/orbittasks-compose && ./gradlew :app:testDebugUnitTest && cd ../orbittasks-xml && ./gradlew :app:testDebugUnitTest
边界情况
  • 场景:在不使用插桩测试的情况下,模拟同步失败和权限被拒绝的分支。
  • 命令:cd examples/orbittasks-compose && ./gradlew :app:testDebugUnitTest
失败恢复
  • 场景:将单元测试请求与 UI 测试或常规架构清理区分开来。
  • 命令:python3 scripts/eval_triggers.py --skill android-testing-unit

完成清单

  • 实现路径明确、精简,并且对应正确的 Android 范围。
  • 已运行或更新相关示例命令和基准测试提示词。
  • 请求跨越相邻技能的范围时,已记录交接事项。
  • 官方参考资料涵盖所选模式以及主要迁移或故障排查路径。

官方参考资料

评论

支持 Markdown