← スキル一覧に戻る

create-ui-test
by stillmoment-app
Privacy-first meditation app. Local playback, no tracking, no distractions
⭐ 1🍴 0📅 2026年1月23日
SKILL.md
name: create-ui-test description: Erstellt neue iOS UI-Tests und Screenshots. Aktiviere bei "Erstelle UI Test...", "Neuer Screenshot...", "Add screenshot test...", oder /create-ui-test. (project)
Skill: UI-Test und Screenshot erstellen
Gefuehrter Workflow zum Erstellen neuer XCUITests und Fastlane Screenshots fuer iOS.
Kernprinzip
- Gefuehrt: Schritt fuer Schritt durch den Prozess
- Best Practices: Bekannte Patterns fuer XCUITest und SwiftUI
- Validierung: Test am Ende ausfuehren und pruefen
Wann dieser Skill aktiviert wird
- "Erstelle UI Test fuer die Settings View"
- "Neuer Screenshot fuer den Player"
- "Add screenshot test for library"
- "UI Test hinzufuegen"
/create-ui-test
Workflow
Schritt 1: Art des Tests erfragen
Frage den User:
- UI-Flow-Test: Testet Interaktionen (z.B. Timer starten, pausieren)
- Screenshot-Test: Fuer App Store / Website Screenshots
- Beides: UI-Test mit Screenshot am Ende
Schritt 2: Ziel-View identifizieren
- Welche View soll getestet werden?
- In welchem Tab ist sie? (Timer / Library)
- Accessibility Identifier pruefen:
# Suche nach existierenden Identifiers grep -r "accessibilityIdentifier" ios/StillMoment/Presentation/Views/
Schritt 3: Navigation planen
Lese die Pattern-Dateien fuer korrekte Navigation:
patterns/navigation.md- Tab-Wechsel, Sheetspatterns/element-finding.md- Elemente finden
Wichtige Regeln:
- Tab-Buttons: Lokalisierten Text verwenden, NICHT accessibilityIdentifier
- SwiftUI Lists:
.descendants(matching: .any)statt.cells - Immer
waitForExistence(timeout:)verwenden
Schritt 4: Test-Methode erstellen
-
Zieldatei bestimmen:
- Screenshots:
ios/StillMomentUITests/ScreenshotTests.swift - Flow-Tests:
ios/StillMomentUITests/*FlowUITests.swift
- Screenshots:
-
Template aus
templates/test-method.mdverwenden -
Naming Convention:
- Screenshots:
testScreenshot0X_Name - Flow-Tests:
testFeature_Scenario
- Screenshots:
Schritt 5: Screenshot-Integration (falls gewuenscht)
snapshot("0X_Name")Aufruf hinzufuegen- Mapping in
ios/scripts/process-screenshots.sherweitern:["0X_Name"]="output-name" - Beide Sprachen werden automatisch generiert (DE + EN)
Lese patterns/screenshots.md fuer Details.
Schritt 6: Validierung
-
Test einzeln ausfuehren:
cd ios xcodebuild test \ -project StillMoment.xcodeproj \ -scheme StillMoment-Screenshots \ -destination 'platform=iOS Simulator,name=iPhone 17,OS=latest' \ -only-testing:StillMomentUITests/ScreenshotTests/testScreenshot0X_Name \ CODE_SIGNING_ALLOWED=NO -
Screenshot pruefen (falls Screenshot-Test):
HEADLESS=false make screenshots # Mit sichtbarem Simulator -
Bei Fehlern: Pattern-Dateien konsultieren
Referenzen
patterns/navigation.md- Tab-Navigation, Sheet-Handlingpatterns/element-finding.md- XCUITest Element-Suchepatterns/screenshots.md- Fastlane Snapshot Integrationtemplates/test-method.md- Code-Templateios/StillMomentUITests/ScreenshotTests.swift- Bestehende Testsdev-docs/guides/screenshots-ios.md- Screenshot-Dokumentation
スコア
総合スコア
60/100
リポジトリの品質指標に基づく評価
✓SKILL.md
SKILL.mdファイルが含まれている
+20
✓LICENSE
ライセンスが設定されている
+10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
レビュー
💬
レビュー機能は近日公開予定です