Smoke Test

Der Begriff Smoke Test kommt ursprünglich aus dem handwerklichen Bereich, wird also in der Gas- und Wasserinstallation, beim Bau von Holzblasinstrumenten oder der Elektronik verwendet. Er hat inzwischen jedoch auch in den Bereichen Hardware und Software Einzug erhalten. Gemeint ist damit ein Probelauf, der entweder nach einer Reparatur durchgeführt wird oder um festzustellen, ob eine Programmfunktion korrekt läuft oder fehlschlägt.

Allgemeine Informationen zum Thema

Der Smoke Test einer Software hat den Zweck, innerhalb eines recht kurzen Zeitraumes neue Funktionen und Anwendungen auf ihre Funktionalität zu überprüfen. Der Test wird durchgeführt, bevor die Software offiziell vorgestellt wird, und steht zwischen deren Entwicklung und Markteinführung. Bezogen auf die Software ist der Name Smoke Test eigentlich irreführend, weil faktisch selbstverständlich keine Rauchentwicklung stattfindet. Doch im Bereich der Hardware, wenn beispielsweise eine gerade neu entwickelte Platine erstmalig an die Betriebsspannung angelegt wird, kann es im suboptimalen Fall tatsächlich zur Rauchentwicklung kommen.

Wer testet beim Smoke Test?

Es mag praktisch erscheinen, wenn der Entwickler den Smoke Test durchgeführt, schließlich kennt er die Software selbst am besten. Allerdings trägt er auch seine „Entwickler-Brille“, der Blick von außen auf die Software fehlt ihm also. Zudem können sich Entwickler nicht zwingend in das Nutzerverhalten hineinversetzen, schon weil die Herangehensweisen von Nutzern und Entwicklern sich meist grundlegend unterscheiden. Es kann daher sinnvoll sein, wenn ein oder mehrere externe Tester die Software prüfen. Dabei findet im besten Fall eine enge Zusammenarbeit statt und der Entwickler reagiert schnell auf die Rückmeldungen der Tester.

Aufgabe des Smoke Tests ist das Herausarbeiten von offensichtlichen Fehlern, also die Überprüfung der wichtigsten Funktionen einer Software. Dabei werden beispielsweise Programmabstürze[1] provoziert, um die Robustheit des Programms zu prüfen. Testen lässt sich auch der ROI. Ist eine neue Funktion in der Planung, die mit einem gewissen Entwicklungsaufwand verbunden ist, können Vorab-Tests[2] helfen, den Aufwand von Zeit und Kosten zu ermitteln.

Grenzen des Smoke Tests

Da der Smoke Test nur ausgewählte Funktionen und Features überprüft, ist seine Aussagekraft begrenzt. Zudem bedeutet ein Testergebnis mit wenigen oder keinen Fehlern nicht automatisch, dass die Software marktreif ist. Schließlich wird der Smoke Test ohne Grenzwerte durchgeführt und liefert lediglich Informationen über grundsätzliche Funktionen. Ein erfreuliches Testergebnis gibt also nur Aufschluss darüber, wo die Software gut aufgestellt ist, nicht aber, wo potenzielle Fehler lauern.

Fällt das Testergebnis dagegen negativ aus, bedarf es zunächst der gründlichen Analyse aller Beteiligten. Bei mangelhaften Ergebnissen muss davon ausgegangen werden, dass schwerwiegende Fehler bereits im Vorfeld gemacht wurden. Es ist wenig zielführend, nach einem Test mit mangelhaftem Ergebnis den bereits zuvor gemachten Smoke Test auszuweiten und den Aufwand zu erhöhen.

Weiterführende Tests

Der Smoke Test ist für die effektive Überprüfung einer Software nur ein Test von vielen, die die Software auf dem Weg zum Optimum begleiten. Thorsten Cleff hat in seinem Buch „Basiswissen – Testen von Software“ folgende Tabelle[3] erarbeitet, die sowohl die unterschiedlichen Tests als auch deren Bedeutung übersichtlich aufzeigt:

Reifegrad nach erfolgreichem Test    Bezeichnung    Reifeattribut der Software    Ergebnis   
1 Smoke Testing Testbar Die Software ist testbereit.
2 Capability Testing Laborgesichert Die Software enthält die geforderten funktionalen Eigenschaften.
3 Function Testing Verwendbar Die Software erfüllt die funktionalen Anforderungen.
4 Complex Testing Praxistauglich Die Software erfüllt die funktionalen Anforderungen zuverlässig.
5 Load & Capability Testing    Einsatzbereit Die Software erfüllt ebenso zuverlässig die Kapazitätsvorgaben.

Man sieht, dass der Smoke Test nur einen Ausschnitt an verwertbaren Informationen bietet und weiterführende Tests dementsprechend umfangreichere Resultate erlauben. In welchem Maße die aufgeführten Tests tatsächlich notwendig sind, hängt von der Aufgabenstellung an die Software ab.

Bedeutung für das Online Marketing

Tests sind grundsätzlich empfehlenswert, wenn es um die Einführung oder Modifikation von Software geht. Sie helfen, Schwächen und Fehler zu erkennen und entsprechend zu reagieren. Allerdings müssen die Grenzen von Tests - insbesondere des Smoke Tests - berücksichtigt werden. Die Aussagekraft ist auf einen recht kleinen Bereich begrenzt, zu viel sollte man also vom Smoke Test nicht erwarten. Um verlässliche Bewertungen durchführen zu können, ist die Durchführung der in der oben genannten Tabelle genannten Tests empfehlenswert.

Einzelnachweise

  1. Glossar zeta-test.com. Abgerufen am 06.02.2017
  2. Einfach wegtesten konversionskraft.de. Abgerufen am 06.02.2017
  3. Basiswissen Testen und Software books.google.de. Abgerufen am 06.02.2017

Weblinks

Kategorie