Was ist Smoke Testing?

Smoke Testing ist im Bereich der Softwareentwicklung ein wichtiger Bestandteil des Entwicklungsprozesses, um fehlerfreie Software ausliefern zu können. [...]

Sind Sie auch schon im IT-Umfeld über den Begriff „Smoke Test“ gestolpert und haben sich gefragt, was eigentlich ein „Rauchtest“ mit moderner Softwareentwicklung zu tun hat?

Smoke Testing – Definition

In der Halbleiterbranche wird nach Fertigstellung eines Schaltkreises erstmalig eine Spannungsquelle angeschlossen, um ein Bauelement in Betrieb zu nehmen. Überlebt nun ein Halbleiter das Einschalten des Stromkreises und fängt nicht an abzurauchen, wurde der erste und initiale Test – also ein Smoke Test – bestanden. Im Gegenzug kann es vorkommen, dass ein Halbleiter nicht ordnungsgemäß konzipiert wurde und das Bauelement nach Anlegen der Betriebsspannung zu schmoren anfängt und somit in Rauch aufgeht.

Innerhalb der Softwareentwicklung wurde nun der Begriff Smoke Test für rudimentäre, also initiale und grundlegende, Tests einer Programmfunktion übernommen.

Smoke Tests für Software – Anwendungsfälle

Smoke Testing wird bei agiler Softwareentwicklung automatisiert und in allen Stufen des Entwicklungsprozesses durchgeführt. Am Anfang der Entwicklung stehen einzelne Programmeinheiten (Units) zur Verfügung. Durch das Smoke Testing dieser Units wird die grundlegende Funktionalität durch die sogenannten Unittests gewährleistet. Erst wenn alle Programmfunktionen fehlerfrei durchlaufen, kann die automatisiert zusammengebaut und somit erstellt werden.

Nach dem Bauen der Software steht erstmalig die gesamte Programmfunktionalität zur Verfügung, die mit weiteren Tests überprüft werden muss. In dieser Stufe der Softwareentwicklung wird von den sogenannten Integrations- oder End-to-End-Tests gesprochen. Auch hier ist das anfängliche Smoke Testing sehr sinnvoll, da aufwändige Tests nur dann laufen müssen, wenn die grundlegend funktionsfähig ist.

Automatisierte Tests bilden hierbei die Grundlage für effiziente Softwareentwicklung. Denn bei jedem Fehlverhalten muss die neu erstellt werden. Bereits gelaufene Tests sind hinfällig und müssen wiederholt werden. Manuelles (händisches) Testen sollte nur in Ausnahmesituationen durchgeführt werden, denn die immer gleichen, stupiden Testabläufe verschwenden wertvolle Ressourcen und sind letztendlich fehleranfällig, weil wenig motivierend. Die für das automatisierte Testing eingesetzten Programme prüfen nun grundlegende Funktionen wie z.B.:

  • Öffnet sich eine Webseite?
  • Kann eine Verbindung zu einem aufgebaut werden?
  • Ist ein Windows Fenster vorhanden?

Erst wenn alle grundlegenden Fragestellungen positiv beantwortet wurden, macht weiteres, umfangreicheres Testing Sinn.

Sie sehen gerade einen Platzhalterinhalt von YouTube. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.

Mehr Informationen

Smoke Test – Beispiel

Ein Beispiel für einen einfachen Smoke Test mit der Fragestellung „Kann eine Verbindung zu einem System aufgebaut werden?“ kann mit einem „ping“ realisiert werden. Das auf vielen Betriebssystemen vorhandene „ping“ Kommando wird verwendet, um einen (Hostname oder IP-Adresse) anzupingen, um ein „Lebenszeichen“ von diesem System zu erhalten. Das nachfolgende Beispiel zeigt eine erfolgreiche Antwort mit dem „ping google.com“ Kommando:

  • >ping google.com
  • Ping wird ausgeführt für google.com [142.250.181.238] mit 32 Bytes Daten:
  • Antwort von 142.250.181.238: Bytes=32 Zeit=16ms TTL=118
  • Pakete: Gesendet = 1, Empfangen = 1, Verloren = 0
  • (0% Verlust)

Das nachfolgende Beispiel zeigt eine erfolglose Antwort mit dem „ping bla.com“ Kommando:

  • >ping bla.com
  • Ping wird ausgeführt für bla.com [38.127.92.75] mit 32 Bytes Daten:
  • Zeitüberschreitung der Anforderung.
  • Pakete: Gesendet = 1, Empfangen = 0, Verloren = 1
  • (100% Verlust)

Der Weg hin zu einem Test-Automatismus mit aussagekräftigen Testreports gestaltet sich relativ einfach, denn intelligente Testframeworks (Robot Framework) bieten gute Möglichkeiten zur Integration dieser Kommandos.

Smoke Tests bestehen somit aus einer Vielzahl von unterschiedlichen Fragestellungen, um neue oder geänderte grundlegend testen zu können.

*Timo Füg zeichnet sich durch sein Wissen bei der Qualitätssicherung von Software-Entwicklungen aus und arbeitet bei der Uniserv GmbH als Technical Lead Software Quality Assurance.


Mehr Artikel

News

Digitale Fähigkeiten der Österreicher:innen lassen zu wünschen übrig

39 Prozent der Beschäftigten in Österreich arbeiten nur selten mit digitalen Tools. Dabei ist klar: die Digitalisierung betrifft immer mehr Jobs. Vor diesem Hintergrund fühlt sich nur etwa jeder Achte hierzulande sehr gut auf die Herausforderungen der Arbeitswelt von morgen vorbereitet. Das sind die Ergebnisse der repräsentativen kununu Arbeitsmarktstudie, für die über 3.000 Beschäftigte in Österreich befragt wurden. […]

News

Mehrheit der Unternehmen könnte den Geschäftsbetrieb nach einer Cyberattacke nicht weiterführen

Den Backups gilt sowohl die Sorge der Securityverantworlichen als auch die Aufmerksamkeit der Hacker. So zeigt die global durchgeführte ESG-Commvault-Studie „Preparedness Gap: Why Cyber-Recovery Demands a Different Approach From Disaster Recovery“, dass nur jedes fünfte Unternehmen weltweit zuversichtlich ist, nach einer Cyberattacke seine Geschäftsprozesse weiterführen zu können. […]

News

KI und Cybersicherheit eröffnen dem Channel Wachstumschancen

Der Bericht „State of the Channel 2025“ zeigt, dass die Nachfrage nach künstlicher Intelligenz im gesamten Channel gestiegen ist, insbesondere bei umsatzgenerierenden Aktivitäten. 53 Prozent der in der DACH-Region befragten Unternehmen betrachten die komplexer werdende Technologie als wichtigsten Faktor für die Kundennachfrage nach Knowhow im Channel. […]

News

Check Point integriert CloudGuard in Nutanix Cloud Platform

Check Point will mit der Kollaboration den Herausforderungen begegnen, denen sich Unternehmen bei der Migration hin zu Cloud-Infrastrukturen gegenübersehen. Durch die Nutzung des Nutanix Service Insertion Frameworks und die Unterstützung des AHV-Hypervisors bietet CloudGuard eine konsistente Durchsetzung von Sicherheitsrichtlinien und Transparenz bezüglich Bedrohungen. […]

Be the first to comment

Leave a Reply

Your email address will not be published.


*