Tests in Ihrem Unternehmen mit Chrome implementieren

Stellen Sie sich vor, die wichtigste Software Ihres Unternehmens funktioniert plötzlich nicht mehr. Was würde passieren? Bestellungen könnten verloren gehen, Fristen könnten verpasst werden, aber die Kunden würden sich definitiv beschweren.

Dieses Albtraumszenario lässt sich vermeiden: Durch die Implementierung eines kontinuierlichen und strengen Testprozesses, der Probleme erkennt, bevor sie Chaos verursachen. Die Implementierung eines solchen Prozesses in Ihrem Unternehmen ist jedoch leichter gesagt als getan.

In diesem Artikel erfahren Sie alles, was Sie beim Einstieg in die Tests in Ihrem Unternehmen beachten müssen und wie Sie langfristig von Tests profitieren können.

Best Practices für das Testen von Produktteams

Im ersten Teil dieses Artikels erfahren Sie, wie Sie Tests in Ihren Workflow einbinden.

Eine Testkultur in Ihrem Team implementieren

Damit Tests in Ihrem Team erfolgreich eingeführt werden können, müssen alle dieselbe Denkweise haben und Qualität nicht als Belastung, sondern als Investition betrachten. Dieser Prozess erfordert wie jede andere kulturelle Veränderung Zeit und Konsequenz.

Regelmäßige Besprechungen, in denen Mängel, ihre Auswirkungen, ihre Ursachen und die erforderlichen Maßnahmen zur Behebung besprochen werden, können dazu beitragen, diese Kultur zu fördern. So wird die Aufmerksamkeit darauf gelenkt, warum es sinnvoll ist, solche Mängel von vornherein zu vermeiden.

Eine engagierte Person im Team, die die Bemühungen leitet und vorantreibt, kann die Erfolgschancen erheblich erhöhen. Eine Person, die team- oder sogar organisationsweite Richtlinien definiert, Best Practices sammelt und teilt und sich auf allen Ebenen für die Bemühungen einsetzt.

Ein weiteres nützliches Instrument kann die Rotation der Supportrolle Ihres Produkts sein. Unverfälschte Informationen aus erster Hand von Ihren Kunden zu erhalten und mehr über die alltäglichen Probleme zu erfahren, mit denen sie bei Ihrem Produkt konfrontiert sind, kann für Produktmanager, Designer und Entwickler eine wertvolle Erfahrung sein.

Das Ziel ist es, dass alle in Ihrem Team verstehen, dass Qualität eine Funktion ist, die genauso wichtig ist wie jede andere Funktion, die Sie für Ihr Produkt entwickeln. Sobald alle diese Denkweise verinnerlicht haben, ist es eine natürliche Weiterentwicklung, zu verstehen, dass Tests auch eine Funktion sind. Denn Tests sorgen für die Qualität der gelieferten Produkte.

Ein Schritt-für-Schritt-Testprozess

Sobald die verschiedenen an der Produktentwicklung beteiligten Teams sich geeinigt haben, können Sie die Durchführung und Verwendung von Tests weiter formalisieren.

Tests in die Definition von „Fertig“ aufnehmen

Wenn Sie Tests als Funktionsanforderung hinzufügen, geben Sie an, dass eine Funktion erst dann zur Veröffentlichung bereit ist, wenn sie ordnungsgemäß und automatisch getestet wurde.

Regelmäßig Tests durchführen

Nach der Implementierung können automatisierte Tests in jedem Schritt des Entwicklungsprozesses als Schutz dienen. Sie erfordern keine manuelle Eingabe und können in jedem wichtigen Schritt Ihrer Entwicklungspipeline ausgeführt werden. Beispiel:

  • Bei jedem Commit.
  • Bei jedem Pull-Request.
  • Nach jeder vollständigen Veröffentlichung oder Umgebungsänderung.

Wenn Sie in Ihrer Produktionsumgebung auf Dienste von Drittanbietern angewiesen sind, kann es sogar sinnvoll sein, Ihre Tests in der Produktionsumgebung auszuführen, um sicherzustellen, dass sich die APIs von Drittanbietern wie erwartet verhalten.

Messwerte definieren und erheben

Es ist wichtig, eine Reihe von Messwerten zu definieren, um die Effektivität Ihrer Tests und die Auswirkungen von Testabläufen auf Ihr Unternehmen zu messen. Hier sind einige Beispiele für Messwerte, die Sie verwenden können:

  • Releases pro Monat: Eine höhere Anzahl von Releases pro Monat kann auf einen agileren Entwicklungsprozess hinweisen. Automatisierte Tests spielen dabei eine wichtige Rolle, da sie dafür sorgen, dass Releases mit Zuversicht durchgeführt werden können.
  • Fehlerberichte: Ein abnehmender Trend bei Fehlerberichten kann ein positives Zeichen dafür sein, dass Ihre Tests (und Entwicklungsabläufe) effektiv sind.
  • Testabdeckung: Die Abdeckung ist zwar kein exakter Messwert, kann aber ein guter Indikator dafür sein, wie intensiv Sie kritische Anwendungsfälle testen.

Beachten Sie, dass diese Messwerte auch von anderen Faktoren beeinflusst werden, die sie verfälschen können. So kann die Anzahl der Releases beispielsweise in der Festtagssaison sinken, während die Anzahl der Fehlerberichte steigt. Verlassen Sie sich also nicht nur auf wenige und achten Sie darauf, sie mit anderen Daten abzugleichen, die Ihrem Team zur Verfügung stehen.


Wenn Sie diese Schritte mit Ihrem Team erfolgreich umsetzen, wird die Produktqualität langfristig definitiv profitieren. Aber Sie können noch mehr tun!

Best Practices für das Testen für Systemadministratoren

Produktteams können nicht allein arbeiten. Sie sind auf die von Systemadministratoren verwaltete Hardware, Tools und Infrastruktur angewiesen. Auch wenn Systemadministratoren in der Regel nicht direkt zur Produktentwicklung beitragen, können sie den Entwicklungsablauf positiv beeinflussen. Beispielsweise durch aktives Verwalten der Browserversion, die bestimmte Nutzergruppen im Unternehmen verwenden.

In diesem zweiten Teil des Artikels wird erläutert, wie das funktioniert, und zwar anhand der Chrome-Kanäle und -Enterprise-Richtlinien.

Chrome-Release-Versionen

Chrome wird standardmäßig automatisch aktualisiert, damit alle Nutzer die neueste, stabilste und sicherste Version von Chrome mit allen aktuellen Funktionen verwenden. Das ist die Version von Chrome, die im Stable-Release-Kanal veröffentlicht wird.

Wenn Sie ein webbasiertes Produkt entwickeln, sollten Sie einen Browser verwenden, der dem stabilen Kanal vorauseilt, damit Ihre Produktteams Zeit haben, Ihr Produkt an Änderungen an der Webplattform anzupassen.

Für diesen Anwendungsfall bietet Chrome insgesamt vier Release-Versionen, die für unterschiedliche Nutzergruppen gedacht sind.

Bei Chrome gibt es verschiedene Release-Kanäle, mit denen Sie zukünftige Browseränderungen antizipieren und die neuesten Funktionen testen können, bevor sie allgemein verfügbar sind:

  • Stable Channel: Diese Version wird von den meisten Nutzern verwendet. Der stabile Kanal wird automatisch aktualisiert, wenn eine neue Chrome-Version veröffentlicht wird. Das geschieht monatlich.
  • Betakanal: Diese Version wird in vier bis sechs Wochen stabil. Sie haben also die Möglichkeit, sich eine Vorschau anzusehen, ein anstehendes stabiles Release zu testen und sich darauf vorzubereiten.
  • Entwicklerversion: Diese Version wird einmal pro Woche aktualisiert und enthält alle aktuellen Fehlerkorrekturen, die später in die Betaversion übernommen werden. Wie der Name des Kanals schon sagt, befindet sich die Version noch in der Entwicklungsphase und kann daher unerwartet abstürzen. Sie enthält aber auch die neuesten Funktionen, manchmal lange bevor sie in die stabile Version aufgenommen werden. Das macht den Dev-Channel zu einem hervorragenden Tool für das Prototyping und die Entwicklung innovativer Produkte.
  • Canary-Kanal: Der experimentellste Kanal, der alle neuesten Funktionen enthält, aber ohne viele Tests. Mindestens einmal täglich veröffentlicht.

Weitere Informationen zu den Chrome-Kanälen finden Sie in der entsprechenden Chrome Concepts-Folge.

Die Produktsymbole der stabilen, Beta- und Entwicklerversionen von Chrome mit Beschreibung

Kanäle in einer Musterorganisation verwenden

Die Struktur von Produktteams variiert je nach Organisation, da es keinen Einheitsansatz für die Softwareentwicklung gibt. Angenommen, wir haben ein Team mit den folgenden Rollen: Produktmanagement, UX und UI, Entwicklung, Betrieb und Support.

Für eine solche Organisation könnte die Kanalaufteilung so aussehen:

  • Produktmanagement: PMs können in der Regel den stabilen Kanal verwenden, um dieselbe Version wie die meisten Nutzer zu nutzen. Gelegentlich kann der Beta- oder Entwicklerkanal verwendet werden, wenn an einer Funktion gearbeitet wird, für die eine noch nicht veröffentlichte API erforderlich ist.
  • Entwicklung und UX: Teile dieser Teams können den Entwicklerkanal nutzen, um Zugriff auf die neuesten Funktionen wie Übergänge zu erhalten, noch bevor sie stabil sind.
  • Betrieb: Kann sich in der Betaphase befinden, um Fehler vorherzusehen, die sich auf Nutzer auswirken.
  • Support: Kann den stabilen Kanal nutzen, um sicherzustellen, dass er mit demselben Browser wie die meisten Kunden mit dem Produkt interagiert.

Ein Diagramm, das den Fluss der Kanäle im Beispielteam zeigt

Kanäle mithilfe von Unternehmensrichtlinien verwalten

Anstatt Richtlinien zu geben und die Entscheidung über den zu verwendenden Kanal dem Nutzer zu überlassen, bietet Chrome auch Unternehmens- und Verwaltungstools, mit denen Sie aktiv verwalten können, welchen Kanal die einzelnen Nutzer verwenden. Das ist nützlich, da die Testfläche sofort von wenigen Personen auf eine deterministische Gruppe von Nutzern erweitert wird. So können Fehler so früh wie möglich und auf nachvollziehbare Weise erkannt werden.

Wenn Sie diese Zugriffssteuerung verwenden möchten, empfehlen wir die folgende Konfiguration:

  • Mitarbeiter (App-Nutzer): Um das Risiko von Unterbrechungen zu minimieren, sollten die meisten Mitarbeiter die stabile Version verwenden, die vom Chrome-Testteam vollständig getestet wurde. Außerdem kann ein kleiner Prozentsatz der Nutzer (5 bis 10%) die Betaversion verwenden. Dieser Kanal erhält eine 4- bis 6-wöchige Vorschau der stabilen Version. So können Administratoren mögliche Probleme mit einer Version erkennen und diese beheben, bevor die Version für alle anderen freigegeben wird.
  • IT-Abteilung: Mitglieder der IT-Abteilung, einschließlich Systemadministratoren, können den Beta- oder Entwicklerkanal verwenden, um eine Vorschau von vier bis sechs bzw. neun bis zwölf Wochen auf zukünftige Entwicklungen für die stabile Chrome-Version zu erhalten.

Ein Diagramm, das die Aufteilung der Kanäle zwischen anderen Mitarbeitern und der IT-Abteilung zeigt

Langfristige Release-Versionen

Die Produktentwicklung verläuft möglicherweise nicht so schnell wie geplant und die monatlichen Releases von Chrome sind möglicherweise zu häufig. Für diesen Anwendungsfall bietet Chrome eine erweiterte stabile Version, mit der Funktionsupdates seltener, aber Sicherheitsupdates weiterhin regelmäßig installiert werden. Diese Version wird alle acht Wochen aktualisiert.

Das folgende Diagramm zeigt, wie verschiedene Meilensteine durch die verschiedenen Release-Kanäle von Chrome gehen:

Ein Flussdiagramm, das die Überschneidung zwischen stabilen und erweitert stabilen Versionen zeigt

  • In den ersten vier Wochen werden für die stabile und die erweitert stabile Version dieselben Versionen bereitgestellt. Danach gehen sie auseinander.
  • Es gibt keinen erweiterten Beta-Kanal. Stattdessen wird der standardmäßige Betazyklus von vier Wochen verwendet, um sowohl die stabile als auch die erweiterte stabile Version zu stabilisieren. Unternehmen, die sich für die erweiterte stabile Version mit achtwöchiger Laufzeit entscheiden, sollten den Betakanal wie gewohnt weiter ausführen, um proaktiv Probleme zu erkennen, die sich auf ihre Umgebungen auswirken könnten.

Fazit

Tests sind ein entscheidender Bestandteil von Softwareentwicklungsunternehmen, um die Qualität ihrer Produkte zu gewährleisten. Sie sind auch ein wichtiger Schritt für Systemadministratoren, um Mitarbeitern eines Unternehmens Zugriff auf hochwertige Software zu gewähren und Unterbrechungen von Geschäftsprozessen zu vermeiden.

Damit die Implementierung eines Testworkflows in Ihrer Organisation erfolgreich ist, ist es wichtig, dass alle die gemeinsame Einstellung teilen, dass Qualität und damit auch Tests eine Funktion sind.

In diesem Artikel haben wir verschiedene Möglichkeiten zur Integration von Best Practices für Tests in Ihre Organisation beschrieben. Eine ausführliche Übersicht über die vorhandenen Testtools finden Sie in unserem Artikel Tools von Chrome für reibungslose, automatisierte Tests.

Eine praktische Anleitung zum Testen von Anfang bis Ende finden Sie in unserem aktuellen Kurs zum Thema Tests und in den Best Practices für die Testautomatisierung auf web.dev.