Betroffene Produkte und Versionen

Alle unterstütztenvon:

  • Adobe Commerce auf Cloud-Infrastruktur
  • Adobe Commerce On-Premises

Worauf bei der Code-Überprüfung geachtet werden muss

Stil

Der Stil kann automatisch durch Ausführen der PhpStorm-Inspektion getestet werden (siehe unten).

Stellen Sie sicher, PHPMD und PHPCS zu konfigurieren und das Coding Standard-Tool über die CLI (auch unten) auszuführen. Es gibt einige Überschneidungen, aber beide verfügen auch über eindeutige Tests.

Konvention und Struktur

Die Überprüfungen der Konvention und Struktur werden manuell durchgeführt.

  • Ist die Klassenfunktionalität auf eine einzige Verantwortung beschränkt?
  • Ist die Verzeichnisstruktur sinnvoll?
  • Wird auf der richtigen Ebene ausgeführt (Server, Client, CSS, JS, Datenbank, Framework, Infrastruktur).
  • Ist die Versionierung korrekt?
  • Sieht der Code unkonventionell aus oder ist er so, als ob er versucht, ein Problem auf die falsche Weise zu umgehen?
  • Wird die Namenskonvention für den Modul-, Paket- und Repository-Namen korrekt angewendet?
  • Stellen Sie sicher, dass globale CSS-Stile sorgfältig angewendet und nicht überbeansprucht werden.

Vollständigkeit

Die Überprüfung auf Vollständigkeit erfolgt manuell.

  • Kann der Code durch Konfiguration aktiviert oder deaktiviert werden und verhält sich der gesamte erforderliche Code erwartungsgemäß?
  • Sind alle Konfigurationen vorhanden, die im Ticket erwähnt werden? Überprüfen Sie Umfang, Datentyp, Validierung, Übersetzung und Standardwerte.
  • Wird die Konfiguration immer auf der niedrigstmöglichen Ebene abgerufen (Store-Ansichtsebene, Website-Ebene oder globale Ebene)? Der Konfigurationsabruf muss mit der Definition des Umfangs in der system.xml übereinstimmen.
  • Werden alle Pfade im Flussdiagramm der technischen Spezifikation abgedeckt? Werden alle anderen technischen Spezifikationen berücksichtigt?
  • Sind für die neue Funktion ACLs definiert?
  • Sind PHP-Dokumente klar? Sind Commit-Nachrichten klar?
  • Ist irgendein Code auskommentiert oder wird Debug-Code angezeigt?

Leistung

Die Überprüfung der Leistung erfolgt manuell, was im Zweifelsfall durch die Ausführung von Code unterstützt werden kann.

  • Werden Abfragen in einer Schleife ausgeführt? Diese Schleife kann sich außerhalb der bearbeiteten Dateien befinden.
  • Können Sie cachable="false" Attribute erkennen? Werden sie korrekt angewandt?

Sicherheit

Die Überprüfung auf Sicherheit erfolgt manuell, was durch die Textsuche unterstützt werden kann. Ein Teil der Sicherheitsprüfung wird durch automatisierte Tests durchgeführt.

  • Werden bei Bedarf Ausnahmen protokolliert? Werden die richtigen Ausnahmetypen verwendet?
  • Können around Plug-ins vermieden werden?
  • Gibt das Plug-in die richtigen Datentypen zurück?
  • Können Sie Rohdaten-SQL-Abfragen finden, die mit der Datenbankabstraktionsebene erstellt werden sollen?
  • Wird ein neuer Datentyp einem beliebigen Benutzer, Administrator oder Frontend bereitgestellt? Ist diese Anfälligkeit ein Sicherheitsrisiko?
  • Werden benutzergenerierte Daten validiert? Alles, was vom Browser kommt, wird als benutzergeneriert betrachtet, einschließlich Cookie-Werte und Server-Kopfzeilen.

Datenschutz und DSGVO

Die Überprüfungen für Datenschutz und DSGVO werden manuell durchgeführt.

  • Verarbeitet der Code Kundendaten oder E-Mails? Achten Sie besonders darauf.
  • Wenn dieser Code in einer Schleife ausgeführt werden kann, kann er dann Kundendaten von einem Schleifenzyklus zum anderen durchsickern lassen?
  • Risikoindikatoren sind Importe, Cron-Aufträge, Transaktions-E-Mails und Batch-Warteschlangen-Handler.
  • Sicherstellen, dass Benutzerdaten in Schleifen isoliert werden. Adobe empfiehlt die Verwendung von Fabriken oder Repositorys, um Modelle im Schleifenzyklus zu erstellen, auf die außerhalb der Schleife nicht zugegriffen werden kann.