Smoke Test

Smoke Test

Copyright ┬ę Shutterstock / Waraphorn Aphai

Was ist ein Smoke Test?

Den Begriff Smoke Test kann man mit Rauchtest ├╝bersetzen. Tats├Ąchlich kommt diese Bezeichnung aus der Technik und dem Bereich des Handwerks, wo Installationen, Wasser- und Gasrohre oder auch ganze Geb├Ąude mit Hilfe von Rauch auf ihre Dichtigkeit getestet werden. Smoke Tests haben im ├╝bertragenen Sinne nun auch ihren Weg in die Software- und Hardwaretechnik gefunden. Der Begriff steht in der IT f├╝r einen Testlauf, der zum Beispiel nach einer Wartung, einer Reparatur oder auch nach dem Launch eines Programms oder Systems durchgef├╝hrt wird, um festzustellen, ob alles korrekt l├Ąuft.

Hintergrund und Allgemeines

Durch den Smoke Test an einer Software soll festgestellt werden, ob Funktionen und Anwendungen, die installiert oder integriert wurden, fehlerfrei funktionieren. Es handelt sich also um einen Funktionalit├Ątstest. Er wird dann durchgef├╝hrt, wenn alle Einrichtungs- und Programmierarbeiten abgeschlossen sind und der Launch oder die Markteinf├╝hrung unmittelbar bevor steht. Der Name Smoke Test mag etwas verwirrend klingen, weil nat├╝rlich nirgends Rauch eingesetzt wird und im Idealfall auch nirgends Rauch entsteht. Aber wer den Gedankengang nachvollziehen und die gedankliche Br├╝cke zum Baugewerbe schlagen kann, der versteht, woher der Begriff kommt. Wie auch am Bau hofft man beim Smoke Test in der IT, dass sich kein Rauch entwickelt, dass alles reibungslos l├Ąuft und dass im schlimmsten Falle Fehler gefunden werden, die behebbar sind.

Wie funktioniert ein Smoke Test?

Bei einer Wasserleitung kann jeder den Smoke Test durchf├╝hren. Gibt es ein Leck, wird dieses in jedem Fall erkannt. Bei einer Software ist die Lage etwas anders. Am besten wird der Smoke Test in diesem Fall nicht von demjenigen Entwickler durchgef├╝hrt, der das System und die Software wie seine Westentasche kennt, sondern von einem anderen Fachmann, der nicht mit den Augen des Entwicklers sondern eher mit den Augen eines Nutzers an den Test heran geht. Oft unterschieden sich die beiden Ans├Ątze ÔÇôEntwicklerverhalten und Nutzerverhalten┬áÔÇô┬ágrundlegend voneinander. Als Tester eignen sich also am besten externe Fachleute, die das neue System oder die neue Software einem echten Stresstest unterziehen. Der jeweilige Entwickler sollte nat├╝rlich zugegen sein, um schnell eingreifen zu k├Ânnen, wenn ein Fehler gefunden wird. Gemeinsam wird so Schritt f├╝r Schritt jede Funktion im getesteten Programm oder der Hardware gepr├╝ft und gegebenenfalls verbessert.

Ziele des Smoke Tests

Ziel des Smoke Tests ist es, einen reibungsloser Launch zu erm├Âglichen, Fehler zu erkennen und zu beheben. Bei jedem Smoke Test wird unter anderem auch ein unkontrollierter Absturz der Software ausgel├Âst, um zu sehen, wie das Programm oder System damit umgeht und ob es einwandfrei neu gestartet werden kann. Au├čerdem werden die h├Ąufigsten Nutzerfehler simuliert, ein Stromausfall herbeigef├╝hrt und der ROI getestet. Selbstverst├Ąndlich kann der Entwickler schon vorab Tests in allen Bereichen durchf├╝hren, um den Smoke Test so kurz wie m├Âglich zu halten und den Aufwand (und somit die Kosten) f├╝r die Tester zu verringern.

Der Smoke Test hat Grenzen

Smoke Tests pr├╝fen in der Regel nur die wichtigsten Eigenschaften und Funktionen einer Soft- oder Hardware. Ein positives Testergebnis bedeutet also nicht, dass ├╝berhaupt keine Fehler mehr vorhanden sind. Manchmal kann das Ergebnis nicht einmal ausreichend sein, um eine Markteinf├╝hrung zu garantieren. Smoke Tests haben keine Grenzwerte und sind nicht genormt. Die Tester m├╝ssen den Umfang ihres Tests im Grunde selbst bestimmen und arbeiten dabei nat├╝rlich mit dem Entwickler zusammen, der Anhaltspunkte liefert und ihnen mitteilt, was die Hauptfunktionen sind und was zu pr├╝fen ist. Am Ende k├Ânnen immer noch zahlreiche kleine Bugs und Fehler ├╝berall in der Software zu finden sein. Ein mangelhaftes Ergebnis gibt jedoch Aufschluss dar├╝ber, dass noch erheblicher Nachbesserungsbedarf besteht und dass weitere Tests durchgef├╝hrt werden m├╝ssen, bevor ein Produkt marktreif ist. Im Falle eines negativen Smoke Tests steht zun├Ąchst eine umfassende Analyse aufseiten der Entwickler an. Meist sind in diesem Fall schwere Fehler in der Basis vorhanden, die beseitigt werden m├╝ssen, bevor an einen neuen Smoke Test gedacht werden kann. Ein negatives Smoke Testergebnis kann f├╝r die Entwickler sehr aufschlussreich sein, denn es liefert eine Art Arbeitsanleitung f├╝r die n├Ąchsten Schritte.

Weitergehende Tests

Smoke Tests sind nur eine Art des Pr├╝fens. Es gibt zahlreiche andere Tests, die im Prozess der Entwicklung einer Hard- oder Software durchgef├╝hrt werden. Sie tragen einen entscheidenden Teil zur Optimierung bei. Neben den Smoke Tests gibt es zahlreiche andere Testverfahren, die ebenfalls angewendet werden. Wer gr├╝ndlich vorgehen m├Âchte, entscheidet sich f├╝r mehrere unterschiedliche Testreihen. Beim Capability Test wird ├╝berpr├╝ft ob eine Software alle die Funktionen ausf├╝hren kann, die von ihr erwartet werden. Beim Function Test wird festgestellt, ob die Software den funktionalen Anforderungen entspricht, die an sie gerichtet werden. Der Complex Test geht in dieselbe Richtung wie der Function Test, pr├╝ft aber darauf aufbauend, ob diese Anforderungen auch in zuverl├Ąssiger Weise erf├╝llt werden. Zudem gibt es noch den Load and Capability Test, aus dem hervorgehen soll, ob eine Software einsatzbereit ist und ob sie die Kapazit├Ątsvorgaben f├╝r einen Einsatz in der Praxis erf├╝llt.
Der Smoke Test ist also nur einer von vielen Tests in einer Reihe von Pr├╝fungen. Je nach Aufgabenstellung und je nachdem, wozu die zu pr├╝fende Software genutzt werden soll, sind mal mehr, mal weniger Tests n├Âtig und sinnvoll. Die Aussagekraft eines absolvierten Smoke Tests ist je nach Produkt und Ziel nicht unbedingt ausschlaggebend.

Weitere informative Glossarartikel finden Sie hier!


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte