Dokumentation · Entwickler-Dokumentation

Test-Leitfaden

Diese Seite beschreibt den Testansatz des Plugins auf einer übergeordneten Ebene. Die interne Testarchitektur, die Bootstrap-Stubs, das Fixture-Layout und der genaue Inhalt der Testsuite werden hier nicht veröffentlicht.

Was Mitwirkende wissen müssen

  • Das Plugin wird mit einer PHP-Unit-Testsuite ausgeliefert, die lokal und in der kontinuierlichen Integration (CI) des Projekts ausgeführt wird.
  • Tests werden mit PHPUnit geschrieben und sind auf PHP 8.1 oder neuer ausgerichtet, was den eigenen Laufzeitanforderungen des Plugins entspricht.
  • Es wird erwartet, dass neue Verhaltensänderungen von Tests begleitet werden, sofern das Verhalten vernünftigerweise durch Unit-Tests überprüft werden kann.

Für die Einrichtung der Umgebung (PHP, Composer, WordPress) siehe Lokale Entwicklungseinrichtung. Die Konventionen, denen neuer Code folgen sollte, finden Sie unter Coding Standards.

Die interne Organisation der Testsuite, die verwendeten Hilfsprogramme und der private Continuous-Integration-Workflow sind Implementierungsdetails.

Unterstützte öffentliche Integrationsschnittstellen

Bevorzugen Sie bei der Integration mit dem Plugin diese stabilen Schnittstellen:

Interne Klassennamen, Option-Keys, Datenbanktabellen, REST- und AJAX-Endpunkte, Cron-Hook-Namen, Capability- und Nonce-Identifikatoren sowie die Release-/Update-Infrastruktur werden als Implementierungsdetails behandelt. Sie können sich zwischen den Versionen ohne Vorankündigung ändern und sind nicht Teil des öffentlichen Integrationsvertrags.

Stabilitäts- und Änderungsrichtlinie

Alles, was oben nicht als unterstützte öffentliche Schnittstelle aufgeführt ist, gilt als internes Implementierungsdetail. Interne APIs, das Speicherlayout und Sicherheitsimplementierungen können sich zwischen den Versionen ändern. Verlassen Sie sich in Code von Drittanbietern, Themes oder externen Systemen nicht auf diese Details. Direkte Datenbankzugriffe (Schreibvorgänge) werden nicht unterstützt.

Hinweis zur öffentlichen Dokumentation. Diese Seite bietet nur eine übergeordnete Integrationsübersicht. Interne Implementierungsdetails, private APIs, Speicherinterna und sicherheitsrelevante Release-Infrastrukturen werden separat gepflegt und sind nicht Teil der öffentlichen Dokumentation. Unterstützte Integrationsschnittstellen sind die dokumentierten Shortcodes, Template-Overrides, die Einstellungs-Benutzeroberfläche und alle in diesem Abschnitt explizit veröffentlichten Erweiterungspunkte.