VWO Logo
Dashboard
DEMO ANFORDERN

Canary Testing

Was ist ein Canary-Test?

Beim Canary Testing wird eine kleine Gruppe von Usern oder Systemen mit einer neuen Softwareversion getestet, während der Rest der User oder Systeme weiter mit der alten Version arbeiten. Dadurch lässt sich die neue Version in einer produktionsnahen Umgebung testen, ohne bei Problemen das gesamte System zu gefährden.

Der Begriff „Canary“ stammt von Kanarienvögeln, die früher in Kohleminen eingesetzt wurden, um gefährliche Gase frühzeitig zu erkennen – sie starben, bevor die Bergleute betroffen waren, und dienten so als Frühwarnsystem.

Canary-Tests vs. A/B-Tests vs. Feature-Flags

Obwohl diese Methoden gemeinsam eingesetzt werden können, um neue Software oder Änderungen in einer Umgebung zu testen, gibt es einige wesentliche Unterschiede.

Canary TestingA/B-TestsFeature-Flags
Der Fokus ist darauf gerichtet, neue Software oder Änderungen in einer kontrollierten, isolierten Umgebung zu testen, bevor sie für die gesamte Userbasis freigegeben wird.Der Schwerpunkt liegt auf dem Vergleich der Performance von zwei Versionen eines Produkts oder einer Funktion.Sie konzentrieren sich auf die Kontrolle der Verfügbarkeit neuer Funktionen für verschiedene User oder User-Gruppen.

Vorteile von Canary Testing

Allgemein gilt, dass Tests die Anzahl der Probleme für End-User reduzieren. Canary Testing spart Zeit und Aufwand in jeder Phase des Entwicklungsprozesses. Es stärkt außerdem das Ansehen des Unternehmens. Vertriebsaktivitäten werden nicht beeinträchtigt, da User weniger von Problemen gestört werden. Zudem bleiben Entwickler motiviert. Die Vorteile von Canary Testing sind im Folgenden aufgeführt.

Risikominimierung

Indem eine neue Softwareversion zunächst nur an eine kleine Gruppe von Usern oder Systemen ausgerollt wird, ermöglicht Canary Testing realitätsnahe Tests – ohne das Risiko, bei Problemen das gesamte System zu beeinträchtigen

Frühzeitige Fehlererkennung

Canary-Tests ermöglichen die frühzeitige Entdeckung von Problemen oder Fehlern, so dass diese behoben werden können, bevor sie sich auf die gesamte Userbasis auswirken, indem die Performance der neuen Version auf einer kleinen Gruppe von Usern oder Systemen überwacht wird.

Schnellere Bereitstellung

Durch die Freigabe neuer Softwareversionen oder Änderungen für eine kleine Untergruppe von Usern oder Systemen ermöglichen Canary-Tests eine schnellere Bereitstellung neuer Funktionen und Updates.

Minimale Ausfallzeiten

Canary Testing kann dazu beitragen, Ausfallzeiten zu reduzieren, indem sie Probleme erkennen und beheben, bevor sie sich auf die gesamte Userbasis auswirken.

Einbeziehung der User und Feedback

Canary Testing liefert erste Usereingaben in einer produktionsähnlichen Umgebung, die zur Verbesserung der Gesamtqualität des Produkts genutzt werden können.

Kostensenkung

Die frühzeitige Erkennung und Behebung von Problemen durch Canary Testing kann dazu beitragen, die Kosten für die Lösung von Problemen zu senken, die in einer Produktionsumgebung auftreten können.

Phasen des Canary Testings

Der Canary-Testing-Prozess lässt sich in mehrere Phasen unterteilen:

Planung

Diese erste Phase umfasst die Definition von:

  • Zielsetzungen und Zielen 
  • Der auszuwählenden User-Gruppe
  • der Testumgebung 
  • Dem zeitlichen Rahmen
  • Performance-Kennzahlen
  • Bewertungskriterien

Bereitstellung (Deployment)

In dieser Phase wird die neue Version der Software oder die Änderung an die ausgewählte Gruppe von Usern ausgeliefert.

Überwachung (Monitoring)

In dieser Phase wird die Performance der aktualisierten Version sorgfältig beobachtet, wobei Methoden wie Monitoringsoftware, Protokollanalysen und Userfeedback eingesetzt werden.

Auswertung (Evaluation)

In dieser Phase werden die Daten aus der Überwachungsphase ausgewertet, um festzustellen, ob die neue Version wie erwartet funktioniert. Auftretende Probleme werden identifiziert und behoben.

Rollout/Rollback

Läuft die neue Version stabil und fehlerfrei, erfolgt der vollständige Rollout an alle User. Bei gravierenden Problemen wird stattdessen ein Rollback zur vorherigen Version durchgeführt, um negative Auswirkungen zu vermeiden.

Nachbereitung (Post-Deployment)

Auch nach dem vollständigen Rollout wird die neue Version weiterhin überwacht, um sicherzustellen, dass keine unmittelbaren oder langfristigen Probleme auftreten

Hinweis: Diese Phasen verlaufen nicht immer linear. Es kann notwendig sein, einzelne Schritte mehrfach zu durchlaufen, bevor die neue Version als stabil und bereit für die vollständige Freigabe gilt.

Best Practices beim Canary Testing

Wenn Sie Canary-Tests durchführen, sollten Sie die folgenden Parameter beachten:

Performance des Systems

Verfolgen Sie die Indikatoren für die System-Performance, einschließlich Fehlerraten, Netzwerklatenz sowie CPU- und Speichernutzung.

User-Erlebnis

Analysieren Sie User-bezogene Metriken wie Ladezeiten, Erfolgsquoten und Zufriedenheitswerte, um die Auswirkungen der neuen Version besser zu verstehen.

Fehlerraten

Mögliche Fehler und Probleme der neuen Version finden Sie, wenn Sie die Fehlerraten im Auge behalten.

Traffic

Vergewissern Sie sich, dass die neue Version problemlos skaliert, indem Sie den Daten-Traffic im Auge behalten, um zu sehen, ob sie die erwartete Nachfrage bewältigen kann.

Sicherheit

Überwachen Sie sicherheitsrelevante Kennzahlen – zum Beispiel fehlgeschlagene Logins, Angriffsversuche oder potenzielle Schwachstellen.

Rollout-Kriterien

Geben Sie die Anforderungen an, die erfüllt sein müssen, bevor die aktualisierte Version an alle User verteilt wird.

Rollback-Plan

Halten Sie stets einen Rollback-Plan bereit, um bei kritischen Problemen schnell zur vorherigen Version zurückkehren zu können.

Automatisierung

Um menschliche Fehler zu vermeiden und die Produktivität zu steigern, automatisieren Sie so viele Aspekte des Prozesses wie möglich, einschließlich Überwachung, Bewertung und Rollback.

Kommunikation

Schaffen Sie klare Kommunikationskanäle mit den Beteiligten und dem Rest des Teams, um sicherzustellen, dass jeder über den Testfortschritt und alle auftretenden Probleme informiert ist.

Kontinuierliche Optimierung

Analysieren Sie regelmäßig die Ergebnisse der Canary-Tests, um Bereiche mit Verbesserungspotenzial zu identifizieren und Änderungen am Prozess vorzunehmen, um dessen Effektivität zu erhöhen.

Herausforderungen beim Canary Testing

Es ist wichtig, eine gut definierte Strategie für Canary-Tests zu haben und die unten genannten Herausforderungen bei der Planung und Durchführung eines Canary-Tests zu berücksichtigen.

Komplexität

Ein strukturierter und durchdachter Canary-Testing-Ansatz ist essenziell, um potenzielle Schwierigkeiten zu bewältigen. Im Folgenden finden Sie zentrale Herausforderungen, die bei der Planung und Durchführung berücksichtigt werden sollten.

Begrenzte Ressourcen

Für die Umsetzung werden umfassende Ressourcen benötigt: eine geeignete Testinfrastruktur, leistungsfähige Monitoring-Tools sowie qualifiziertes Personal für Einrichtung, Durchführung und Analyse.

Konfiguration und Kompatibilitätsprobleme

Während Canary Testing wertvolle Einblicke liefert, können dabei auch unerwartete Probleme auftreten – insbesondere bei mobilen Anwendungen, bei denen bestimmte Fehler in der Entwicklungs- oder Staging-Umgebung schwer zu reproduzieren sind.

Skalierung auf Unternehmensebene

Die Implementierung auf breiter Ebene gestaltet sich oft schwierig, da die Software auf Endgeräten der User läuft. Eine mögliche Lösung besteht darin, automatische Updates einzuführen oder Feature Flags zu verwenden, um neue Funktionen nur für ausgewählte User freizuschalten.

Fazit

Die Canary-Deployment-Methode ist besonders beliebt, weil sie den Bedarf an zusätzlicher Infrastruktur minimiert und gleichzeitig das Risiko bei Änderungen in produktiven Systemen deutlich reduziert. Unternehmen, die auf Canary Testing setzen, können neue Versionen realitätsnah testen – ohne diese sofort für alle User freizugeben.

Diese kontrollierte Einführung bietet die Möglichkeit, frühzeitig Feedback zu sammeln, Probleme zu identifizieren und rasch zu reagieren. So verbessern Sie nicht nur die Stabilität Ihrer Releases, sondern auch die Zufriedenheit Ihrer User – und stärken nachhaltig das Vertrauen in Ihre Marke

Share
Neues eBook

Experimentation-Loop

Mehr lesen

Weitere Begriffe aus dem Glossary

Churn Rate (Abwanderungsrate)

Die Churn Rate ist eine Kennzahl, die den Anteil der Kund:innen angibt, die in einem definierten Zeitraum abspringen oder ihr Abonnement kündigen.

Mehr lesen

Click Area

Die Click Area bezeichnet den aktiven Bereich eines klickbaren Elements auf Websites oder Apps und beeinflusst maßgeblich die Benutzerfreundlichkeit.

Mehr lesen

Durchschnittlicher Bestellwert

Der durchschnittliche Bestellwert (AOV) bezieht sich auf den durchschnittlichen Geldbetrag, den ein Kunde bei einer Bestellung auf einer Webseite, in einer mobilen App oder in einem Geschäft ausgibt.

Mehr lesen

Kampagnenplanung

Mit der Kampagnenplanung können Sie planen, wann Ihre Kampagnen beginnen und enden sollen, um sicherzustellen, dass sie Ihre Zielgruppe zu den optimalen Zeiten erreichen. Sie können Start- und Pausendaten und -zeiten festlegen und Ihre Kampagnen sogar nach einem bestimmten Zeitplan wiederholen. Die Planung Ihrer Kampagnen hilft Ihnen, Konflikte zu vermeiden, Ihre Daten zu optimieren und die Wirkung Ihrer Kampagnen auf Ihr Zielpublikum zu maximieren.

Mehr lesen