Linting, Stan, phpCS, Audit

14. November 2025, 10:40 Uhr · Quelle: Pressebox
Linting, Stan, phpCS, Audit
Foto: Pressebox
Linting, Stan, phpCS, Audit
Unser Team verwendet Tools wie phpcs und phpStan, um Code-Konsistenz zu gewährleisten. Lernen Sie, wie automatische Audits frühe Fehlererkennung ermöglichen und die Entwicklung optimieren.

Karlsruhe, 14.11.2025 (PresseBox) - Als Entwickler sollte man sich immer darauf verlassen können, dass der Code, den man schreibt, so funktioniert wie er soll, und dass er keine Nebenwirkungen auf ältere, bereits bestehende Funktionen hat. Zu diesem Zweck gibt es automatische Tests. Wie mein Team bei der punkt.de diese verwendet, kann man in der Artikelserie über Tests nachlesen.

First things first - Automatisierung

Unsere Tests werden nach jedem Commit und nächtlich (auf dem Main-Branch) von GitLab CI ausgeführt.

Ein sauberer, standardisierter Code ist leichter wartbar

Die erste Stufe für uns ist, dass alle Entwickler des Teams den Code auf die selbe Weise schreiben. Hierfür nutzen wir je nach Programmiersprache diverse Tools:

  • phpcs (php)
  • yamllint (YAML)
  • eslint (TypeScript und JavaScript)
  • stylelint (CSS und SCSS)
Jedes dieser Tools funktioniert auf die gleiche Art - es prüft den geschriebenen Code auf die Form, die in einer entsprechenden Configdatei vermerkt ist, und stellt sicher, dass kein Entwickler davon abweicht. Wie strikt oder offen die Dateien sind, kann natürlich je nach Team unterschiedlich sein - abgesehen von phpcs, dieses nutzt den per PSR definierten Codestyle von php selbst und kann sogar je nach Version andere Varianten prüfen. Das Besondere bei diesen Tests ist, dass sie bereits im git-Workflow vor einem Commit ausgeführt werden, und damit kein Entwickler unbewusst Code mit inkorrektem Codestyle in das zentrale Repository übertragen kann - wenn es um Work in Progress geht, kann man den Schritt temporär überspringen, was dann aber ein sehr bewusst durchgeführter Schritt ist.

Zukünftige Fehler verstecken sich in Details

Der nächste Schritt ist phpStan. Dieses Tool prüft, ob der Code so geschrieben ist, dass Datentypen eingehalten bleiben und konsistent sind. Beispielsweise reicht es nicht, ein Array als Array zu definieren - Stan zwingt uns dazu, dass wir definieren, dass es beispielsweise ein Array aus Zahlen ist, welches Strings als Keys besitzt. Stan lässt sich dabei in 9 (zukünftig 10) Levels konfigurieren, jeder Level ist strikter als der Level zuvor. In unserem größten Projekt im Team verwenden wir derzeit Level 8 - Level 9 würde uns dazu zwingen, dass wir mit mixed als Datentyp genauer umgehen, was in einem Umfeld wie TYPO3 mit stellenweise ziemlich flexiblen Collections und Arrays größeren Definitionsaufwand bedeuten würde.

Durch die Prüfungen wird erreicht, dass selbst durch mehrere Schichten Programmiercode und auch durch Fremdcode Datentypen sauber sind, und Funktionen nicht inkorrekt verwendet werden können, was bei neuen Entwicklungen zu besserer Konsistenz verhilft.

Die Ausführung von Stan dauert verglichen mit den Linting-Tests vergleichsweise lang, weswegen wir uns entschieden haben, diese nur im Rahmen der Pipelines auszuführen und nicht direkt innerhalb des git-Workflows.

Sicherheitslücken so früh wie möglich sehen

Im Team haben wir die Entscheidung getroffen, dass wir so weit wie möglich keine Fremdlibraries und -pakete mit bekannten Sicherheitslücken auf Kundenserver zu deployen. Zu diesem Zweck führen wir die Befehle npm audit --omit=dev und composer audit aus, welche die über den entsprechenden Paketmanager installierten Pakete gegen zentrale CVE-Datenbanken prüfen, und betroffene installierte Versionen anmerken. Bei npm ignorieren wir die Dev-Pakete, da diese bei Deployments ausgenommen sind und damit ohnehin nicht auf Kundenservern ausgeführt werden.

Dieser Schritt war uns wichtig genug, dass wir ihn im Rahmen des git-Workflows bei jedem Push ausführen, und wie bei den Linting-Schritten kann ein Entwickler bewusst den Test überspringen - dies ist zum Beispiel dann im Ablauf notwendig, dass man nicht mehrfach Paketupdates in mehreren Branches durchführen möchte. Wir können die betroffenen Versionen in Branches pushen, im main-Branch das Update durchführen und anschließend die anderen Branches rebasen.

Uns ist auch bewusst, dass Sicherheitslücken auch bekannt werden können, wenn wir gerade nicht pushen müssen oder viele Pipelines durchgeführt werden. Daher haben wir weitere Abläufe, um bestehenden Code und Releases zu untersuchen, was aber ein Thema für einen weiteren Blogbeitrag ist.

Ausblick

Dies war der erste von 3 Artikeln zu unseren Tests. Freut euch auf Teil 2 über unseren Umgang mit Unittests und anderen Tests mit phpUnit, und auf Teil 3 für API- und Browsertesting.

Agiles Testing und Prozess-Know-how für Ihr Team:

Egal ob Agentur, Industrieunternehmen oder ein eigenständiges Entwicklerteam: Wenn Sie agile Testing-Prozesse etablieren oder weiterentwickeln wollen, unterstützen wir Sie mit unserem Know-how – sei es durch praxisorientierte Workshops oder durch direkte, projektbezogene Mitarbeit. Wir begleiten Sie von der Einführung agiler Testmethoden über die Optimierung bestehender Abläufe bis hin zur Entwicklung und Umsetzung individueller Testing-Strategien. Sprechen Sie uns gerne an, um gemeinsam Ihre Qualitätssicherung und Entwicklungsprozesse auf ein neues Level zu heben!

Software / Code-Linting / PHP / Testing / Security
[pressebox.de] · 14.11.2025 · 10:40 Uhr
[0 Kommentare]
Die Neuerfindung der E-Mail im KI-Zeitalter: Warum CMOs jetzt umdenken müssen
Bonn, 29.04.2026 (PresseBox) - E-Mail galt schon oft als überholt – und hat sich doch jedes Mal neu erfunden. Jetzt steht der Kanal vor seiner nächsten großen Transformation: Künstliche Intelligenz verändert nicht nur, wie Unternehmen Inhalte erstellen und personalisieren. Sie verändert vor allem, wie E-Mails auf Empfängerseite wahrgenommen, priorisiert […] (00)
vor 1 Stunde
Finanzamt (Archiv)
Berlin - Die stellvertretende Vorsitzende der SPD-Bundestagsfraktion, Wiebke Esdar, hat die Vorschläge der Unionsfraktion zur Einkommensteuerreform scharf kritisiert. Seriöse Politik heiße, dass Entlastungen gegenfinanziert werden, sagte Esdar am Mittwoch zum Nachrichtenportal "T-Online". Das heiße für die SPD: Die reichsten fünf Prozent trügen stärker […] (00)
vor 10 Minuten
Willst du CBD kaufen, stößt du im Internet auf eine riesige Bandbreite unterschiedlicher Produkte. Jeder Händler bewirbt das eigene Produkt als „das beste“, aber oft steckt dahinter nur Marketing und kein echtes Qualitätsmerkmal. Wenn du wirklich sicher gehen möchtest, dass du ein gutes Produkt erwischst, solltest du eine Checkliste der […] (00)
vor 15 Minuten
Ein Mann im Anzug sitzt auf einem Bett vor seinem Laptop
Berlin (dpa/tmn) - Aktualisierungen fürs Betriebssystem kommen immer gerade dann herein, wenn man es am wenigsten gebrauchen kann - so ist jedenfalls oft der subjektive Eindruck. Hinzu kommt, dass etwa für Windows tatsächlich häufig Updates vorliegen und dann das System auch noch ad hoc Neustarts einfordert. Das nervt viele Nutzer. Das hat Microsoft nun […] (00)
vor 24 Minuten
Karel Komárek lebt in Luzern. Der tschechische Milliardär hat seinen Konzern Allwyn von einem heimischen Lotteriebetreiber zu einem europäischen Glücksspielriesen umgebaut. Allwyn führt heute die britische Nationallotterie, hält Anteile an der italienischen Lottoitalia und der griechischen OPAP, kontrolliert die tschechische Sazka. Und 59,69 Prozent an der […] (00)
vor 4 Minuten
«Jenke. Zeitreise» geht trotz schwacher Quoten weiter
ProSieben setzt die Doku-Reihe mit Jenke von Wilmsdorff fort, obwohl die Resonanz auf die 80er-Ausgaben schwach war. Dass ProSieben an JENKE. Zeitreise festhält, wirkt auf den ersten Blick überraschend. Die im November 2024 ausgestrahlten 80er-Folgen kamen lediglich auf 0,65 und 0,79 Millionen Zuschauer sowie schwache Marktanteile von 2,6 und 3,2 Prozent. In der klassischen Zielgruppe der 14- […] (00)
vor 1 Stunde
Paris Saint-Germain - Bayern München
Paris (dpa) - Beim Einzug in den Bankettsaal des Teamhotels wurden die Münchner Verlierer nach dem Neun-Tore-Wahnsinn von Paris beklatscht und bejubelt wie Gewinner. Die Szenerie nach Mitternacht wirkte surreal. Aber es passte zu diesem irrwitzigen Abend, der tatsächlich mehrere Gewinner hatte.  Darunter irgendwie auch diese Comeback-Bayern, die nach […] (00)
vor 3 Stunden
bitcoin, crypto, finance, coins, money, currency, cryptocurrency, blockchain, investment, closeup
Der Bitcoin-Kursversuch, die Marke von $78.000 zu überschreiten, wurde im Vorfeld des heutigen FOMC-Treffens abrupt gestoppt. Grund dafür könnten die jüngsten Berichte über den Konflikt mit Iran sein, die den Kurs innerhalb von Minuten um $1.500 sinken ließen. Gleichzeitig stiegen die Ölpreise erneut an, wobei der US-Ölpreis (USOIL) erstmals seit dem […] (00)
vor 28 Minuten
 
Hochschulinfotag und Tag der Weiterbildung am 9. Mai 2026 auf dem neuen Campus der HWG LU!
Ludwigshafen, 29.04.2026 (lifePR) - Die Hochschule für Wirtschaft und Gesellschaft […] (00)
Onco-Innovations erzielt CMC-Fortschritt: Scale-up abgeschlossen
Lüdenscheid, 29.04.2026 (lifePR) - Onco-Innovations Ltd. (ISIN: […] (00)
Lagerverwaltungssoftware für KMU – zwischen Kostendruck und Effizienzsteigerung
Hannover, 28.04.2026 (PresseBox) - Kleine und mittelständische Unternehmen stehen im Lager […] (00)
Ukrainische Flagge in Kiew (Archiv)
Kiew - Die Bundesregierung schickt einen neuen Botschafter nach Kiew. Boris Ruge soll […] (00)
bitcoin, cryptocurrency, finance, blockchain, money, currency, crypto, coin, digital, virtual
Der Ethereum-Kurs hat einen neuen Rückgang begonnen und ist unter die Marke von.300 […] (00)
Taylor Swift
(BANG) - Taylor Swift hat ihre Fans als "ein bisschen seltsam" bezeichnet, weil sie […] (00)
Legendäres Abenteuer für die Hosentasche: Guild Wars Reforged erobert im Sommer mobile Endgeräte
Wer hätte damals im Jahr 2005 gedacht, dass die prachtvollen Landschaften Tyrias […] (00)
«Ted Lasso» kehrt im August zurück
Apple TV hat den Starttermin der neuen Staffel bestätigt und schickt Jason Sudeikis diesmal ins […] (00)
 
 
Suchbegriff