Skip to content

Prüfstand der Übergabe

Der aktuelle Projektstand wurde mit PHP 8.2.34 und PHP 8.3.6 unter Linux geprüft, mit Symfony 7.4.21, Doctrine ORM 3.7.5 und DBAL 3.10.6. Die Composer-Zielplattform ist PHP 8.2.12 x64. Die Lockdatei wurde durch Composer neu aufgelöst; nur ZipStream wechselte von 3.2.2 auf 3.1.2. Alle übrigen Paketversionen blieben erhalten.

Prüfung Ergebnis
PHPUnit mit temporärer SQLite-Datenbank, PHP 8.2.34 und 8.3.6 Je 27 Tests, 2.358 Assertions, bestanden
Dieselben Funktionstests mit PHP 8.2.34 gegen einen echten MySQL-Server 8.0.46 27 Tests, 2.358 Assertions, bestanden
Initialmigration auf leerer MySQL-Datenbank 76 SQL-Anweisungen erfolgreich ausgeführt
Doctrine-Schemaabgleich nach Migration Datenbank und Mapping stimmen überein
Fiktive Demodaten einspielen Erfolgreich, getrennt von den Testkonten
PHP-Syntax Sämtliche PHP-Quellen einschließlich neuer Sprachkonfiguration und Tests ohne Syntaxfehler
Symfony-Dienstkonfiguration Typen und Abhängigkeiten gültig
Twig Alle 36 Templates syntaktisch gültig
YAML Konfiguration, drei Sprachkataloge, drei Sicherheitskataloge und OpenAPI gültig
Übersetzungsabdeckung Je 641 übereinstimmende UI-Schlüssel und 18 Sicherheitsmeldungen in DE/EN/JA; keine fehlenden statischen Template-Schlüssel
JavaScript node --check erfolgreich; 72 DOM-Verhaltensprüfungen mit jsdom in DE/EN/JA bestanden
CSS/SVG Alle drei Stylesheets mit css-tree geparst; bekannte statische Werte geprüft (moderne Funktionen ausgenommen); drei SVG-Dateien als XML parsebar
Start-/Sicherungsskripte Shell-Syntax gültig
Composer Manifest/Lockdatei gültig; Installations- und reale Plattformprüfung mit PHP 8.2 erfolgreich; Audit ohne gemeldete Sicherheitslücken zum Prüfzeitpunkt

PHP 8.2 und XAMPP

Die tatsächlichen PHP-8.2-Läufe umfassen Symfony-Bootstrap, alle PHP-Quellen, Plattformanforderungen und Funktionstests. Ein zusätzlicher Test erzeugt mit PhpSpreadsheet und ZipStream 3.1.2 eine echte XLSX-Datei und importiert deren deutsche, englische und japanische Inhalte wieder. Die vorhandenen Integrationstests führen Sodium-Verschlüsselung beim Anlegen von Webhooks aus. Es wurde keine Erweiterungsanforderung ignoriert oder entfernt.

Die Composer-Metadaten wurden für das gemeldete PHP 8.2.12 x64 aufgelöst; der tatsächlich ausgeführte PHP-8.2-Interpreter war Version 8.2.34 unter Linux. Eine Windows-/XAMPP-Installation mit exakt PHP 8.2.12 wurde hier nicht ausgeführt. Die Schritte zum Aktivieren von Sodium und zur Apache-Konfiguration stehen in XAMPP.md.

Oberfläche und weitere Sprachen

Die zusätzlichen Tests prüfen die Menüs und Aktionsbeschriftungen in DE/EN/JA, Kontext beim Sprachwechsel, beibehaltene Filter und Vergleichsauswahl sowie identische Übersetzungsschlüssel. Ein isolierter Testkernel aktiviert Französisch und prüft die automatisch erweiterten Routen, Zugriffskontrollen, Formulare, Suche, Sitemap und Import-/Exportspalten.

npm ci && npm run test:interface prüft CSS-Syntax und 72 Interaktionen für mobile Navigation, Escape/Fokus-Rückgabe, Fokusbegrenzung, mobile Filter, Vergleichslimit, Sprachmenü und Bewegungssteuerung. jsdom hat keine Layout-Engine; die Bildschirm-/Sichtbarkeitswerte werden für diese Verhaltensprüfungen kontrolliert vorgegeben. Daraus wird keine visuelle Abnahme oder Browserkompatibilität abgeleitet.

Inhalt der Funktionstests

Die Tests prüfen dreisprachige öffentliche Seiten und japanische Suche; 22 Arbeitsbereiche jeweils in drei Sprachen; E-Mail-/Passwortanmeldung und Sitzungsentzug; Rollen- und CSRF-Regeln; fremde Firmenkonten; NDA-Annahme, Eigentümerfreigabe und Ablauf; Token-Scope und Mandantentrennung; neue Dokumentrevisionen und veraltete Übersetzungen; PDF-/DOCX-/ZIP-Ausgaben; XLSX-Dateierstellung und -Import; Importvalidierung und Modellaktualisierung; Zahlen-/Einheitenprüfungen; KI-Verarbeitungserlaubnis und Monatskontingent; Wiederholbarkeit von Übersetzungsaufträgen; Rückgabe einer Zeichenreservierung bei Providerfehler; Stripe-Signaturen und idempotente Ereignisverarbeitung; Serviceangebote, Aufgaben, API-/Webhook-Verwaltung; Lieferantenauswahl; Nachrichten, Angebote, Käuferantwort, Terminbestätigung und ICS-Export.

Externe HTTP-Dienste werden in Integrationstests kontrolliert simuliert. Der Anwendungscode nutzt im Betrieb ausschließlich den konfigurierten echten Dienst; die Testantworten sind nicht in die Benutzeroberfläche eingebaut.

Noch nicht in dieser Umgebung ausgeführt

  • Docker-Image-Build und vollständiger Compose-Start: kein Docker-Daemon verfügbar.
  • Exakte MySQL-Version 8.4: das Compose-Projekt und die CI verwenden 8.4; der ausgeführte MySQL-Test verwendete 8.0.46 mit derselben DBAL-MySQL-8-Plattform.
  • Browserprüfung mit realem Rendering, Bildschirmgrößen und visuellen Screenshots: kein unterstütztes Browser-QA-Werkzeug verfügbar. Twig-/DOM-Anfragen wurden direkt gegen den Symfony-Kernel geprüft.
  • Produktive KI-Übersetzungen, ausgehende SMTP-Zustellung, Stripe-Checkout und reale ERP-Endpunkte: keine Betreiberzugangsdaten bereitgestellt.
  • Tatsächliche ClamAV-Scan-/OCR-Containerkette und ein Docker-Volume-Backup/Restore: Installation und Ablauf sind implementiert und dokumentiert; die volle Containerkette benötigt die Zielumgebung.

Diese Grenzen sind im Übergabestand offen ausgewiesen. Sie verändern den vereinbarten Funktionsumfang nicht; sie benennen die noch auf dem Zielserver nötigen Betriebsprüfungen.