Magento Blog: Anleitungen und Praxiswissen | Seite 317 | mironsoft
Magento Blog
-
12.03.2025
Eine Preistabelle mit Umschalter zwischen monatlicher und jährlicher Abrechnung ist bei SaaS-Produkten und Abo-Modellen Standard, weil sie den Jahresrabatt direkt sichtbar macht und die Kaufentscheidung erleichtert. Mit Alpine.js entsteht eine Preistabelle, die Beträge reaktiv umrechnet, Rabatt-Badges anzeigt und den empfohlenen Tarif hervorhebt, komplett ohne Page Reload und ohne serverseitige Logik im Frontend.
-
12.03.2025
Lange Produktlisten, Artikel-Feeds und Dokumentationsseiten zwingen den Browser, Layout und Style für tausende Elemente zu berechnen, auch wenn davon nur ein Bruchteil sichtbar ist. content-visibility überspringt diese Arbeit gezielt für Bereiche außerhalb des Viewports und macht aus einer trägen langen Seite eine Seite, die sich anfühlt wie eine kurze.
-
12.03.2025
Ein Playwright-Test, der nur gegen CSS-Klassen oder feste Timeouts prüft, testet im Hyvä-Theme oft am eigentlichen Problem vorbei, weil ein erheblicher Teil des Komponentenzustands nicht im sichtbaren DOM, sondern im reaktiven Alpine-State hinter x-data lebt. Dieser Artikel zeigt, wie sich der Alpine-State direkt über die öffentliche Alpine-API abfragen lässt, wie ein Test zuverlässig auf die Initialisierung wartet statt auf feste Wartezeiten zu setzen, und welche Fallstricke in CSP-restriktiven Hyvä-Setups typischerweise zu Flaky Tests führen.
-
12.03.2025
KI-gestützte Testgenerierung verspricht, aus einem aufgezeichneten Nutzerfluss oder einer schlichten, natürsprachlichen Beschreibung automatisch lauffähigen, syntaktisch korrekten Testcode zu erzeugen, wodurch das mühsame, manülle Schreiben von Testfällen für viele Standardszenarien deutlich beschleunigt wird. Dieses Versprechen ist für offensichtliche, sich wiederholende UI-Interaktionen durchaus haltbar, verdeckt aber ein zentrales Problem: Ein generierter Test, der syntaktisch korrekt läuft, muss inhaltlich noch lange nicht das prüfen, was fachlich tatsächlich relevant ist.
-
11.03.2025
Seit TypeScript 5.0 lassen sich Typparameter mit dem const Modifier versehen. Damit leitet der Compiler bei jedem Aufruf automatisch die engstmöglichen Literal-Typen ab, ohne dass der Aufrufer selbst as const schreiben muss.
-
11.03.2025
Reproduzierbare Docker Builds erzeugen aus identischem Quellcode und identischer Konfiguration bei jedem Build denselben Image-Digest, unabhängig davon, wann oder auf welcher Maschine gebaut wurde. SOURCE_DATE_EPOCH eliminiert das größte Rauschquelle für Nicht-Determinismus, den eingebetteten aktuellen Zeitstempel in jedem Layer.
-
11.03.2025
Named Volumes sind der Standardweg, um persistente Daten aus Containern herauszuhalten, doch ohne durchdachte Backup-Strategie bleiben sie ein blinder Fleck im Betrieb. Snapshot-Container, tar-Archive und deduplizierende Werkzeuge wie restic sichern Volumes konsistent, platzsparend und nachvollziehbar ab, mit Retention-Policies und regelmaessigen Restore-Tests statt ungeprueften Vertrauens.
-
11.03.2025
Die Wahl der richtigen CSS Methodik entscheidet über Wartbarkeit, Onboarding-Zeit und Refactoring-Aufwand eines Projekts über Jahre hinweg. BEM, Utility First und CSS Modules lösen dasselbe Grundproblem, nämlich Namenskollisionen und unkontrollierte Kaskade, mit fundamental unterschiedlichen Kompromissen bei Lesbarkeit, Build-Komplexität und Teamdisziplin.
-
10.03.2025
Ein Testfall, der ein komplexes Objekt mit zwanzig Feldern vollständig und explizit aufbaut, obwohl für den konkreten Test nur ein einziges dieser Felder tatsächlich relevant ist, verschleiert die eigentliche Testabsicht hinter einer Wand irrelevanter Boilerplate-Daten und macht es für eine spätere Leserin oder einen späteren Leser schwer zu erkennen, welche der zwanzig Werte für das tatsächliche Testergebnis ausschlaggebend sind. Das Test-Data-Builder-Pattern löst dieses Problem, indem es sinnvolle, realistische Standardwerte für alle Felder bereitstellt und nur die für den jeweiligen Test tatsächlich relevanten Werte explizit überschreibbar macht.
-
10.03.2025
Suchfelder, die während der Eingabe Ergebnisse laden. Formulare, die Felder in Echtzeit validieren. Warenkorb-Komponenten, die auf Klicks reagieren ohne Seitenreload. Das alles mit PHP und Twig — Symfony UX Live Component macht PHP-Komponenten reaktiv, ohne React oder Vue zu brauchen.