Unterschiede
Die wesentlichen Unterschiede lassen sich in drei Kategorien unterteilen.Zweck und Nutzung
Zweck und Nutzung
Die Produktivumgebung ist die Umgebung beim Benutzer oder Betreiber, in der das System tatsächlich für den Geschäftsbetrieb eingesetzt wird.Die Testumgebung hingegen dient dazu, das Testobjekt unter kontrollierten Bedingungen mit spezifizierten Testfällen auszuführen, um Fehlerzustände aufzudecken, bevor diese die Produktion erreichen.
Kontrolle und Reproduzierbarkeit
Kontrolle und Reproduzierbarkeit
In der Produktivumgebung hingegen laufen oft viele andere Systeme parallel, was die Randbedingungen ständig verändert. Dies führt dazu, dass dort durchgeführte Tests schwer oder gar nicht reproduzierbar sind.In einer Testumgebung hat das Team die volle Kontrolle über Parameter und Konfigurationen.
Risikopotenzial
Risikopotenzial
Tests direkt in der Produktivumgebung sind gefährlich, da Fehlerwirkungen zu teuren Systemausfällen und Datenverlusten im produktiven Kundensystem führen können.Eine separate Testumgebung schirmt diese Risiken ab.
Zusammenhänge
Trotz ihrer Unterschiede stehen die Umgebungen in einer engen Beziehung zueinander.Ähnlichkeit als Qualitätsfaktor
Ähnlichkeit als Qualitätsfaktor
Eine Testumgebung muss der späteren Produktivumgebung so nahe wie möglich kommen (Hardware, Systemsoftware, Netzwerk etc.), damit die Testergebnisse auf den späteren Betrieb übertragbar sind.
Übergang im Testprozess
Übergang im Testprozess
Während der Systemtest zwingend in einer separaten Testumgebung stattfinden sollte, wird der Abnahmetest (Acceptance Test) oft bereits in der realen Einsatzumgebung beim Auftraggeber oder einer sehr identischen Abnahmeumgebung durchgeführt. Hierbei wird das System unter normalen Betriebsbedingungen validiert.
Bereitstellung durch moderne Technik
Bereitstellung durch moderne Technik
Um die Übereinstimmung zwischen den Umgebungen sicherzustellen und diese schnell und reproduzierbar bereitzustellen, werden häufig virtuelle Maschinen (VM) oder Container (wie Docker) eingesetzt. Diese erlauben es, die gesamte Konfiguration der Testumgebung einzufrieren und später in die Produktion zu übertragen.