mcpField
I
ios-testing

ios-testing

github.com/pproenca测试与质量218278 次安装11 周前更新
代码仓库

关于 ios-testing

为 iOS 和 Swift 应用提供测试设计与编写参考,按八个类别整理并排序规则。适用于在指定的模块化 MVVM-C 架构约定下,处理测试架构、单元与 UI 测试、并发、快照和 CI 的开发者。

主要功能

  1. 01八类共 44 条优先级规则
  2. 02测试架构与单元测试指南
  3. 03Mock、Stub 与 Fake 隔离模式
  4. 04异步与并发测试实践
  5. 05SwiftUI、UI 与快照测试指南
  6. 06CI 可靠性与执行建议

适用场景

  1. 01设计可测试的依赖与测试目标
  2. 02为异步 Swift 代码编写单元测试
  3. 03测试 SwiftUI 模型、绑定与用户流程
  4. 04配置快照测试套件与 CI 执行

安装

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

$npx skills add https://github.com/pproenca/dot-skills --skill ios-testing

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

包含的文件

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

metadata.json
assets/templates/
_template.md
references/
_sections.md
arch-arrange-act-assert.md
arch-constructor-injection.md
arch-protocol-dependencies.md
arch-single-responsibility-tests.md
arch-test-target-separation.md
arch-testable-import.md
async-actor-testing.md
async-await-directly.md
async-confirmation.md
async-mainactor-isolation.md
async-task-cancellation.md
ci-coverage-thresholds.md
ci-deterministic-test-data.md
ci-flaky-test-quarantine.md
ci-parallel-execution.md
ci-test-plans.md
mock-avoid-over-mocking.md
mock-dependency-container.md
mock-fake-for-integration.md
mock-protocol-based-mocks.md
mock-spy-for-verification.md
mock-stub-return-values.md
snap-device-matrix.md
snap-inline-snapshots.md
snap-named-references.md
snap-swift-snapshot-testing.md
swiftui-binding-testing.md

详细介绍

iOS 测试最佳实践

面向 iOS 和 Swift 应用的综合测试指南,达到首席工程师级别。包含 8 个类别、44 条规则,按影响力排序,帮助指导测试架构决策、测试编写模式和 CI 基础设施。

Clinic 架构约定(iOS 26 / Swift 6.2)

本指南中的所有建议都基于 Clinic 模块化 MVVM-C 架构:

  • 功能模块仅导入 Domain + DesignSystem(绝不导入 Data,也不导入同级功能模块)
  • App 目标是汇合点,并负责管理 DependencyContainer、具体协调器以及 Route Shell 接线
  • Domain 保持纯 Swift,并定义模型以及 repository、*Coordinating、ErrorRouting 和 AppError 契约
  • Data 负责 SwiftData/网络/同步/重试/后台 I/O,并实现 Domain 协议
  • 读写流程默认采用陈旧数据优先、后台重新验证的读取方式,以及乐观排队写入
  • ViewModel 直接调用 repository 协议(默认不设 use-case/interactor 层)

适用场景

在以下场景中参考这些指南:

  • 为 iOS 应用编写新的单元测试或 UI 测试
  • 通过依赖注入设计可测试的架构
  • 测试 async/await、actor 和 Combine 发布者
  • 设置快照测试或视觉回归测试套件
  • 配置 CI 流水线、测试计划和并行执行

按优先级划分的规则类别

优先级类别影响前缀
1测试架构与可测试性关键arch-
2单元测试基础关键unit-
3测试替身与隔离高mock-
4异步与并发测试高async-
5SwiftUI 测试中高swiftui-
6UI 与验收测试中ui-
7快照与视觉测试中snap-
8测试可靠性与 CI低中ci-

快速参考

1. 测试架构与可测试性(关键)
2. 单元测试基础(关键)
3. 测试替身与隔离(HIGH)
4. 异步与并发测试(HIGH)
5. SwiftUI 测试(MEDIUM-HIGH)
6. UI 与验收测试(MEDIUM)
7. 快照与视觉测试(MEDIUM)
8. 测试可靠性与 CI(LOW-MEDIUM)

使用方法

请阅读各个参考文件,了解详细说明和代码示例:

参考文件

文件描述
references/_sections.md分类定义和排序
assets/templates/_template.md新规则模板
metadata.json版本和参考信息

评论

支持 Markdown