Swift Testing

Patrones de Swift Testing, taxonomía de test-doubles, y guía de migración para suites basadas en @Test.

Por bocato · bocato/swift-testing-agent-skill

Probado · Funciona ★ 9.6/10

Swift Testing — Patrones de Swift Testing, taxonomía de test-doubles, y guía de migración para suites basadas en @Test.

Qué hace

Codifica las convenciones de Swift Testing (@Test/#expect/#require/@Suite), la taxonomía de test-doubles de Martin Fowler (corrigiendo el hábito de la comunidad de llamar 'Mock' a cualquier stub), y reglas de ubicación de fixtures/mocks, respaldado por nueve archivos de referencia que cubren organización, async, migración, tests parametrizados, y snapshot testing. Se activa con palabras clave de Swift Testing, solicitudes de migración desde XCTest, o preguntas de test-double/fixture/TDD acotadas a Swift.

Informe de la prueba

Pedimos una suite de tests para un validador de email más un mock de repositorio: la versión con skill usó parametrización de @Suite/@Test con 3-4 entradas cada una, renombró correctamente el ingenuo 'MockUserRepository' a un 'SpyingStub' según la taxonomía de Fowler, y lo ubicó junto al protocolo bajo #if DEBUG exactamente como exige la skill — la base usó XCTest plano y etiquetó erróneamente el stub como mock.

Probado el: 2026-07-13 · Claude Code 2.x (agent harness)

Instalación

git clone https://github.com/bocato/swift-testing-agent-skill
cd swift-testing-agent-skill
mkdir -p ~/.claude/skills
cp -r swift-testing ~/.claude/skills/swift-testing

Comandos y prompts de ejemplo

  • /swift-testingPatrones de Swift Testing, taxonomía de test-doubles, y guía de migración para suites basadas en @Test.

Los skills se activan con peticiones en lenguaje natural, sin comandos que memorizar. Tras instalarlo, prompts como estos lo activan (en inglés):

  • Migrate these XCTest cases to Swift Testing with @Test and #expect
  • Should this test double be a stub or a mock in my Swift Testing suite
  • Write parameterized Swift Testing cases for this async function