Files
FeelAloud/docs/QA-CHECKLIST.md
2026-07-22 22:18:33 +02:00

6.1 KiB

QA- und Release-Checkliste

Diese Liste ist für einen Release Candidate auf einem echten iPhone gedacht. Simulator-Tests allein reichen wegen Foundation Models, lokaler Spracherkennung, Notifications und Action Button nicht aus.

Build und Installation

  • Clean Build mit der Release-Konfiguration erfolgreich
  • Keine neuen Compilerwarnungen
  • Automatisches Signing verwendet das erwartete Team
  • Bundle-ID entspricht App Store Connect
  • Marketing-Version und Build-Nummer sind korrekt
  • App-Icon erscheint scharf auf Home Screen, Spotlight und Einstellungen
  • Display Name lautet FeelAloud
  • App läuft nur als iPhone-Target und nicht versehentlich als iPad-App

Erststart und Berechtigungen

  • Erststart zeigt keine unnötige Berechtigungsabfrage
  • Mikrofonabfrage erscheint erst beim ersten Spracheintrag
  • Speech-Abfrage erscheint nur für die Spracheingabe
  • Ablehnung des Mikrofons erzeugt eine verständliche Meldung
  • Ablehnung der Spracherkennung erzeugt eine verständliche Meldung
  • Mitteilungsabfrage erscheint erst beim Aktivieren der Erinnerungen
  • Bei abgelehnten Mitteilungen wird der Toggle zurückgesetzt

Spracheintrag

  • Aufnahme startet und die rote Stop-Schaltfläche ist erreichbar
  • Teiltranskript erscheint während der Aufnahme
  • Stoppen beendet Mikrofon und Audio Session
  • Deutsche lokale Spracherkennung funktioniert im Flugmodus
  • Nicht verfügbare lokale Spracherkennung fällt nicht auf Cloud zurück
  • Leeres Transkript zeigt eine hilfreiche Meldung
  • Manuelle Eingabe ist jederzeit möglich

Lokale KI und Prüfmaske

  • Foundation-Models-Status wird unter Mehr korrekt angezeigt
  • Ein typischer deutscher Text wird sinnvoll strukturiert
  • Nicht erwähnte Songnamen oder Aktivitäten werden nicht erfunden
  • Alle KI-Felder lassen sich vor dem Speichern korrigieren
  • Musik im Kopf blendet Ohrwurmfelder ein
  • Ohne Musik im Kopf wird stattdessen Stress angeboten
  • Nicht verfügbares Modell führt zur manuellen Eingabe
  • Flugmodus verändert den lokalen KI-Pfad nicht

Momentaufnahmen und Follow-up

  • Manuelle Check-in-Schaltfläche öffnet genau fünf Gesichter
  • Jede Stufe speichert exakt einen Snapshot
  • Mehrfaches schnelles Tippen erzeugt keine Duplikate
  • Haptisches Erfolgsfeedback wird ausgelöst
  • Gut erzeugt keine Kontextfrage
  • Mittel erzeugt keine Kontextfrage
  • Sehr gut fragt beim nächsten normalen Öffnen am selben Tag nach
  • Schlecht fragt beim nächsten normalen Öffnen am selben Tag nach
  • Sehr schlecht fragt beim nächsten normalen Öffnen am selben Tag nach
  • Kontextantwort wird gespeichert und im Verlauf angezeigt
  • Heute nicht mehr fragen unterdrückt nur diesen Snapshot
  • Offene Kontextfragen eines Vortags erscheinen nicht am Folgetag

Erinnerungen

  • Auswahl zwischen zwei und drei Erinnerungen funktioniert
  • Alle konfigurierten Uhrzeiten erzeugen lokale Requests
  • Ändern einer Uhrzeit ersetzt alte Requests
  • Deaktivieren entfernt alle drei stabilen Requests
  • Banner erscheint im Vordergrund
  • Tipp auf Banner im Hintergrund öffnet den Check-in
  • Tipp auf Banner nach Kaltstart öffnet den Check-in
  • Notification-Öffnung löst nicht sofort eine alte Kontextfrage darüber aus
  • Zeitzonen- und Sommerzeitwechsel wurden plausibilisiert

Persistenz und Verlauf

  • Gespeicherte Einträge bleiben nach App-Neustart erhalten
  • Gespeicherte Check-ins bleiben nach App-Neustart erhalten
  • 7-Tage-Filter enthält heute und die sechs vorherigen Kalendertage
  • 30-Tage-Filter enthält heute und die 29 vorherigen Kalendertage
  • Gesamtzeitraum beginnt beim ältesten Datensatz
  • Eigener Zeitraum funktioniert auch bei vertauschten Von-/Bis-Daten
  • Durchschnitt stimmt rechnerisch mit den sichtbaren Punkten überein
  • Diagramm zeigt Werte 1 bis 5 korrekt
  • Eintragsdetail zeigt alle bedingten Felder korrekt

Export

  • Export ist ohne Daten deaktiviert
  • XLSX-Dateiname enthält den gewählten Datumsbereich
  • XLSX öffnet ohne Reparaturmeldung in Apple Numbers
  • XLSX öffnet ohne Reparaturmeldung in Microsoft Excel
  • Arbeitsblatt Übersicht enthält Anzahl und korrekten Durchschnitt
  • Arbeitsblatt Momentaufnahmen enthält Kontext und Quelle
  • Arbeitsblatt Tagebuch enthält die Einträge des gewählten Zeitraums
  • Umlaute, Emoji, Zeilenumbrüche, &, <, > und Anführungszeichen bleiben erhalten
  • CSV besitzt UTF-8-BOM und Semikolon-Trennung
  • CSV escaped Semikolon, Anführungszeichen und Zeilenumbrüche korrekt
  • Abbrechen des Share-Sheets verändert keine gespeicherten Daten

Systemintegration

  • Kurzbefehl Eintrag aufnehmen erscheint nach Installation
  • Kurzbefehl öffnet die App im Aufnahmefluss
  • Action Button kann dem Kurzbefehl zugewiesen werden
  • Action Button startet die Aufnahme zuverlässig aus gesperrtem/aktivem Zustand

Oberfläche und Barrierefreiheit

  • Light Mode und Dark Mode sind lesbar
  • Größte Dynamic-Type-Größen verdecken keine primären Aktionen
  • VoiceOver liest die fünf Bewertungen eindeutig vor
  • Aufnahme-/Stop-Aktion besitzt ein eindeutiges Accessibility Label
  • Farbige Informationen sind zusätzlich durch Text oder Symbol erkennbar
  • Bedienung funktioniert auf der kleinsten unterstützten iPhone-Größe
  • Deutsche Texte sind frei von abgeschnittenen oder überlappenden Elementen

Datenschutz und Release Gate

  • Netzwerkverkehr des Release Builds zeigt keinen eigenen Datenupload
  • Keine personenbezogenen Testdaten liegen in Git oder Build-Artefakten
  • PrivacyInfo.xcprivacy ist im erzeugten App-Bundle enthalten
  • Xcode Privacy Report enthält keine unerklärten Required-Reason-APIs
  • App-Store-Datenschutzangaben entsprechen dem finalen Build
  • Öffentliche Datenschutz- und Support-URLs sind erreichbar
  • Medizinischer Hinweis ist in App und Metadaten vorhanden
  • TestFlight-Testhinweise nennen Geräte- und iOS-Voraussetzungen
  • Bekannte Blocker sind dokumentiert und akzeptiert