Codeabdeckung ist eine der wichtigsten Metriken bei der Bewertung Ihrer Codequalität. In diesem Artikel werden wir Ihnen nicht nur wertvolle Einblicke darüber geben, was genau Codequalität ist, sondern etwas mit Ihnen teilen, auf das wir sehr stolz sind, nämlich unseren neuesten Meilenstein: Die Ersten zu sein, die es geschafft haben, 80% Codeabdeckung in Shopware 6 zu erreichen und was genau das für uns und für den Endnutzer bedeutet.
Auffrischung: Was ist Codeabdeckung?
Codeabdeckung ist einer dieser Begriffe, die oft verwendet werden, zu denen jedoch nur die wenigsten Menschen eine eindeutige Erklärung haben. Um diese Metrik zu definieren, kann man sich diese folgendermaßen vorstellen: Codeabdeckung ist ein Maß dafür, wie viele Linien, Blöcke und Bogen Ihres Codes ausgeführt werden, während automatisierte Tests laufen. Mit anderen Worten: Wie viel von Ihrem Code tatsächlich von den automatisierten Tests abgedeckt wird.
Wenn an einer Stelle in Ihrem Code Änderungen vorgenommen werden, kann dieses unvorhergesehene Auswirkungen auf andere Abschnitte in ihrem Code haben. Ein guter Prozentanteil in der Codeabdeckung erlaubt es Ihnen, dies fast augenblicklich zu erkennen.
Automatische Tests
Bevor ein neues Plug-in veröffentlicht wird, führen die Integrations-Spezialisten von MultiSafepay stets eine umfangreiche Testphase durch. Obwohl dies sehr gründlich und effektiv ist, nimmt es für unsere Spezialisten viel Zeit in Anspruch. Um Zeit zu sparen und somit noch effektiver arbeiten zu können, haben wir bei der Veröffentlichung unseres Plug-ins für Shopware 6 von Beginn an ein automatisches Testverfahren angewandt.
Aufgrund unserer stetigen Bemühungen seit dem Beginn der Entwicklung des Shopware 6 Plug-ins, haben wir nun eine stabile Codeabdeckung von 80%. Vorsichtshalber werden zudem vor der Veröffentlichung jeder Vauptversion manuelle Tests durchgeführt. Der größte Vorteil automatischer Tests besteht für uns darin, nicht jedes Mal manuelle Tests durchführen zu müssen, wenn wir Änderungen in unserem Code vornehmen.
Um unseren leitenden Entwickler Jasper Nadi zu zitieren:
“Wir werden niemals eine 100%-ige Codeabdeckung anstreben. Unser Ziel ist es, dass unsere Funktionen ordnungsgemäß funktionieren, was bedeutet, dass keine 100%-ige Codeabdeckung benötigt wird. Wie Goodhart einmal sagte: ‘Wenn eine Maßnahme zum Ziel wird, ist es keine gute Maßnahme mehr.’ Wir sind nun in einer Position, die es uns erlaubt, eine ordnungsgemäße Funktion zu versichern und die erforderliche Wartung überschaubar zu halten, was mich sehr stolz macht.”
Hauptvorteile
Einen konstanten Prozentanteil in der Codeabdeckung aufrecht zu erhalten bietet einige Vorteile. Einer der Hauptvorteile liegt darin, Änderungen am bestehenden Code vornehmen zu können. Normalerweise kann es beim Anpassen des Codes in einem Teil Ihres Plug-ins zu Problemen in einem anderen Abschnitt kommen. Dies manuell zu checken nimmt Zeit in Anspruch und birgt darüber hinaus das Risiko menschlicher Fehler. Durch automatische Tests hingegen erfahren Sie nahezu sofort, ob alles ordnungsgemäß funktioniert und menschliches Versagen spielt keine Rolle.
Dies erlaubt uns auch, jede neue Version von Shopware 6 sofort implementieren zu können. Somit können wir sicherstellen, dass unsere Plug-ins nicht nur heute, sondern auch in der Zukunft ordnungsgemäß funktionieren. Diese schnelle Implementierung und grundsätzliche Kontrolle über den Code kreiert eine optimale Nutzererfahrung. Der Großteil des Codes wird regelmäßig überprüft und wenn nötig korrigiert, um sicherzustellen, dass so wenig Bugs und Fehler wie möglich verbleiben.
Zusammengefasst bietet uns ein höherer Prozentsatz in der Codeabdeckung folgende Vorteile
- Erhöhte Qualität des Gesamtprojekts
- Verbesserte Kundenerfahrung/Zufriedenheit
- Schnellere Markteinführungen von neuen Funktionen
- Einfachere Pflege der Codebasis in der Zukunft
Durch unser automatisches Testen in unserem Shopware 6 Plug-in heben wir uns von der Konkurrenz ab. Wir sind sehr stolz auf das, was wir erreicht haben und streben ähnliche Ergebnisse für unsere anderen Plug-ins an.
Möchten auch Sie durch unsere Lösungen mehr verkaufen?