CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

swift-testing

Writes and migrates Swift Testing framework tests with @Test, @Suite, #expect, #require, confirmation, traits, withKnownIssue, Attachment.record, processExitsWith exit tests and capture lists, Test.cancel, Issue.record warnings/manual failures, XCTest-to-Swift Testing migration, Xcode 27 interoperability modes, XCUITest UI-test boundaries, performance/snapshot boundaries, mocking, async patterns, and test organization. Use when writing tests, converting XCTest assertions such as XCTUnwrap or XCTFail, reviewing advanced Swift Testing API availability, or deciding when to keep XCTest/XCUITest.

Quality

94%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

The canonical home for this skill is dpearson2699/swift-ios-skills

SKILL.md
Quality
Evals
Security

Quality

Content

86%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, well-structured reference skill: executable Swift examples dominate, migration boundaries and version gates are stated as concrete correction rules, and the split between SKILL.md and the two reference files is clean and easy to navigate. The only weaknesses are minor redundancy around the pointer-only "Additional Patterns" section and the absence of an explicit feedback loop in the migration workflow.

Suggestions

Merge the 'Additional Patterns' section (a single pointer sentence) into the neighboring sections or the References list to remove a redundant heading.

Add one line to the migration workflow telling the reader what to do when discovery/pass/fail/skip counts mismatch after migrating a file (e.g., check for XCTest-only traits like XCTAssertThrowsError or setup/teardown that need manual conversion before proceeding).

DimensionReasoningScore

Conciseness

The body is dense with executable code and framework-specific rules rather than concepts Claude already knows. Minor trim opportunities remain: the "Additional Patterns" section is a bare pointer paragraph that could merge into adjacent sections, and the Version-Gated APIs table partially duplicates testing-advanced.md content. Matches the 4 anchor (efficient, minor instances that could be trimmed); not 5 because of these small redundancies, and not 3 because nothing is padding or re-explained basics.

4 / 5

Actionability

Copy-paste-ready Swift throughout: trait combinations, `#expect(throws:)` and error-value forms, `try #require(await fetchUser(id: 1))`, `withKnownIssue { } when: { }`, `Attachment.record(...)`, `await #expect(processExitsWith: .failure) { [expectedCode] in ... }`, plus explicit migration mappings ("XCTUnwrap ... -> try #require(...)"). Fully executable and covering the common cases matches the 5 anchor.

5 / 5

Workflow Clarity

The migration workflow is sequenced with a validation checkpoint ("Migrate one file or suite at a time, compare discovery/pass/fail/skip counts") and a Review Checklist supports verification. Matches the 4 anchor (clear sequence, most checkpoints present); not 5 because there is no feedback loop for what to do when counts mismatch, and general test-writing usage has no explicit sequence. No destructive/batch-operation cap applies.

4 / 5

Progressive Disclosure

A ~240-line overview with a Contents navigation list and two clearly signaled one-level-deep references (references/testing-patterns.md and references/testing-advanced.md, both verified to exist with matching content and no nested references). Bulk detail is appropriately offloaded while canonical version gates stay inline, matching the 5 anchor (clear overview, well-signaled references, appropriate split).

5 / 5

Total

18

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An exemplary description: concrete API-level capabilities, explicit third-person action verbs, and a precise "Use when" clause covering test writing, XCTest migration, API availability review, and framework-boundary decisions. Trigger terms match what a user would naturally say when needing this skill.

DimensionReasoningScore

Specificity

"Writes and migrates Swift Testing framework tests with @Test, @Suite, #expect, #require, confirmation, traits, withKnownIssue, Attachment.record, processExitsWith exit tests and capture lists" names many concrete actions and specific APIs with comprehensive coverage, in third-person voice. Matches the 5 anchor (multiple specific concrete actions, comprehensive); not 4 because no meaningful capability is left unenumerated.

5 / 5

Completeness

The first sentence explicitly answers "what" with enumerated capabilities, and "Use when writing tests, converting XCTest assertions..., reviewing advanced Swift Testing API availability, or deciding when to keep XCTest/XCUITest" gives concrete "when" triggers. Both are explicit, matching the 5 anchor; the missing-when cap at 3 does not apply.

5 / 5

Trigger Term Quality

Natural user phrasings are all present: "writing tests", "converting XCTest assertions such as XCTUnwrap or XCTFail", "XCTest-to-Swift Testing migration", "deciding when to keep XCTest/XCUITest". Comprehensive natural-term coverage including synonyms matches the 5 anchor; not 4 because the common user phrasings (write tests, migrate XCTest, Swift Testing vs XCTest) are each explicitly stated.

5 / 5

Distinctiveness Conflict Risk

A clear niche (Swift Testing framework, with explicit XCTest/XCUITest boundary and migration triggers) makes it distinct from generic Swift or XCTest skills. The "deciding when to keep XCTest/XCUITest" trigger actively disambiguates overlap cases, matching the 5 anchor's minimal conflict risk; not 4 because the niche and triggers are unambiguous.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

dpearson2699/swift-ios-skills

Path

skills/swift-testing/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.