Mobile Infrastruktur

Testinfrastruktur: Mieten oder Betreiben?


Zum Testen gehörte die Testinfrastruktur schon immer dazu und in Zeiten, in denen man Tests größtenteils manuell ausführen musste, machte man sich hierüber noch wenig Gedanken. Die Tool-Landschaft war deutlich weniger komplex als heute. Der Aufbau und Betrieb der Testinfrastruktur wurde als Teil des sowieso aufwendigen - da manuellen - Tests angesehen. Die Testumgebungen wurden stets gehegt und gepflegt, da ein neues Aufsetzen nicht mal eben zwischendurch erledigt werden konnte. Doch was ist heute beim Aufbau einer kosteneffizienten Testinfrastruktur zu beachten?

Dev-Test-Ops Ansätze halten Einzug

In der heutigen von Dev-Test-Ops geprägten Systemlandschaft muss vieles automatisch passieren, dadurch wurde die Systemlandschaft jedoch wesentlich komplexer und die Erwartungen sind stetig gestiegen. Die Software soll mit Hilfe von CI/CD-Pipelines automatisch gebaut, mehrfach getestet und auf einer automatisch generierten Testumgebung deployt werden. Dabei sollen während der Tests abgedeckte Anforderungen mit dem Requirements-Tool abgelichen und gefundene Fehler im Issue-Tracker angelegt werden.

Die Testinfrastruktur ist somit nur ein kleiner Teil einer großen, ineinander verzahnten Tool-Landschaft. Daher begrenzen wir uns im Folgenden nur auf diesen Ausschnitt, obwohl sich die Frage “Mieten oder Betreiben?” auch für alle oben genannten Tools (CI/CD, Requirements- und Issue-Tracking, Testautomatisierung, etc.) stellen lässt.

Testinfrastruktur

Unter Testinfrastruktur verstehen wir die Systeme und Geräte, die zum Ausführen der Tests notwendig sind. Hier möchten wir im Speziellen die Infrastruktur für Web- und Mobileanwendungen betrachten. Zum Ausführen von automatisierten und manuellen Tests von Web- oder Mobileanwendungen werden in der Regel zwei verschiedene Ressourcen benötigt: Virtuelle Maschinen für klassische Webbrowser-Tests und Mobilgeräte für App-Tests bzw. Mobile-Webbrowser-Tests.

Die Bereitstellung von virtuellen Maschinen in der internen Virtualisierungsumgebung stellt für die meisten Unternehmen kein Problem dar, bei echten Mobilgeräten wird es hingegen schon schwieriger diese automatisiert in die Infrastruktur zu integrieren. Wir möchten im Folgenden betrachten, welche Aspekte Auswirkungen auf die Kosten haben.

Virtuelle Maschinen

Eine Windows-VM mit aktuellem Betriebssystem und Browsern fällt in größeren Unternehmen, die sich im Windows-Umfeld bewegen, aufwands- und kostenseitig wenig ins Gewicht. Doch für eine Testautomatisierung, die viele Betriebssysteme und Browser abdecken muss, reicht dies nicht aus. Es werden also diverse Templates benötigt, die die gewünschten Kombinationen aus Betriebssystemen und Browser-Versionen zur Verfügung stellen. Hier kommen schnell fünf bis zehn unterschiedliche Templates zusammen.

Betriebssystem- und Browserversionen
Auszug aus den webmate Betriebssystem-Templates

Aufbau und Pflege dieser Templates sind aufwendig und auch mit Kosten, wie beispielsweise für die Betriebssystem-Lizenzen verbunden. Je mehr Varianten für die Testautomatisierung benötigt werden, desto höher ist auch der zeitliche Aufwand für die Pflege, da alleine für die Bereitstellung der neuesten Browser-Versionen gegebenenfalls inkl. Beta-Versionen zwei bis drei Personentage im Monat eingeplant werden müssen.

Bei Betriebssystemen gibt es weniger häufig große Releases, diese sind jedoch deutlich komplexer und erfordern daher mehr Zeit in der Vorbereitung wie beispielsweise der aktuell anstehende Wechsel von Windows 10 auf Windows 11. Der eigentliche Betrieb der virtuellen Maschinen stellt einen eher kleinen Aufwand dar, da sowohl das Know-How als auch die allgemeine Infrastruktur häufig bereits vorhanden sind.

Mobilgeräte

Für die Mobilgeräte gelten viele der oben genannten Aspekte in gleichem Maße. Bei den Mobilgeräten kommen jedoch noch folgende Aspekte hinzu. Neben dem Typ des Mobilgerätes (Smartphone oder Tablet) spielt auch die Auflösung der Geräte eine wichtige Rolle für die Testausführung bzw. die abzudeckende Varianz. Die Auswahl der passenden Geräte (Betriebssystem, Browser, Auflösung, Gerätetyp) bedarf einiger Vorplanung. Denn der Markt der Mobilgeräte ist sehr dynamisch und das Nutzungsverhalten der Anwendung muss stetig überwacht werden. Also mit welchen Gerätetypen, -modellen, Browsern und Betriebsystemen greifen die meisten Kund:innen auf die Anwendung zu und muss die Geräteauswahl womöglich angepasst werden?

Kostenseitig ist die Anschaffung der Geräte der offensichtlichste Block. Die Preise der Geräte [1] kennen seit Jahren nur den Weg nach oben und Preise von weit über 1.000 Euro sind keine Seltenheit mehr. Im Dauerbetrieb kann man von einer Nutzungszeit von maximal zwei Jahren ausgehen, wobei an dieser Stelle auch ein gewisses Budget für Wartungen eingeplant werden muss. Der Dauerbetrieb stellt vor allem für Akkus eine hohe Beanspruchung dar, sodass man pro Gerät nochmal 10-15% der Anschaffungskosten mit einplanen sollte.

Ein häufig unterschätzter Aspekt ist der Betrieb der Mobilgeräte. Das erste Gerät zum Testen kann man noch an eine Entwicklungsmaschine anschließen und manuell monitoren. Sobald es aber mehr werden, muss eine professionelle Lösung her. So kommt man um den Aufbau einer eigenen Infrastruktur mit Geräte-Host, Netzwerk, Lademöglichkeiten und Monitoring nicht herum. Dieses Know-How ist in der Regel nicht vorhanden und muss beim eigenen Betreiben dieser Lösung aufgebaut und aufrecht erhalten werden. Auch hier sollte man die Dynamik des Marktes nicht unterschätzen, denn die einmal funktionierende Lösung kann für die nächste Gerätegeneration schon nicht mehr lauffähig sein.

Know-How Aufbau und Erhalt

Wie oben bereits mehrfach erwähnt, spielt aus unserer Sicht das Thema Know-How eine entscheidende Rolle. Je mehr Know-How im Unternehmen bereits vorhanden ist bzw. für ähnliche Zwecke wiederverwendet werden kann, desto eher lohnt es sich, den Betrieb selbst zu übernehmen.

Doch ist wenig Know-How vorhanden und muss dieses erst aufgebaut oder “eingestellt” werden, müssen diese Kosten ebenfalls mit betrachtet werden. Was kostet es vor allem, das Know-How auf dem aktuellsten Stand zu halten und auch im Unternehmen zu etablieren. Wäre ja schade, wenn das einzige Teammitglied mit diesem Wissensstand das Unternehmen verlässt und damit das ganze Know-How verloren geht und wieder von neuem aufgebaut werden muss.

Monetär lässt sich hier keine valide Schätzung abgeben, es bleibt also eher eine strategische Frage. Möchte man das Know-How aufbauen oder dieses Wissen auslagern?

Zusammenfassung

Kostenseitig muss vor allem eine interne Rechnung für Personaleinsatz und Know-How-Aufbau erstellt werden, die man mit einem Mietmodell vergleichen kann. An dieser Stelle sollte man aber Annahmen treffen oder gewisse Schätzungen mit einrechnen, da die Betrachtung aller Aspekte bis ins Details sehr aufwendig werden kann. Bei Mobilgeräten können noch Hardwarepreis und Peripherie eingerechnet werden und danach entscheidet vermutlich die strategische Ausrichtung über das Betriebsmodell.

Bei der strategischen Entscheidung kann man die folgende Auflistung der Vor- und Nachteile der beiden Modelle einfließen lassen.

Eigener Betrieb:
  • Höhere Flexibilität
  • Kostenersparnisse (je nach vorhandenem Know-How)
  • Keine Sicherheitsfreigaben etc. notwendig
  • Höheres Ausfallrisiko
  • Personalverfügbarkeit sicherstellen
Mietmodell bzw. SaaS:
  • Volle Kostentransparenz
  • Planungssicherheit
  • Kein Know-How notwendig
  • Größere Skalierbarkeit
  • Abhängigkeit von einem Dienstleister und vertragliche Bindungen
  • Je nach Anwendungsfall weniger Flexibilität

Möchten Sie mehr zum Thema erfahren, sprechen Sie uns gerne an und wir prüfen gemeinsam die für Sie effizienteste Lösung.

Wählen Sie Ihren Wunschtermin

Zum Kalender

Referenzen