Der Unterschied zwischen Rauch- und Gesundheitstests ist das am meisten missverstandene Thema beim Testen von Software. Es gibt eine enorme Menge an Literatur zu diesem Thema, aber die meisten von ihnen sind verwirrend. Der folgende Artikel versucht, die Verwirrung zu beheben.
Die wichtigsten Unterschiede zwischen Rauchtest und Sanity Testing können anhand des folgenden Diagramms ermittelt werden:
Rauchprüfung gegen Vernunftprüfung
Um das obige Diagramm zu verstehen, lassen Sie uns zuerst verstehen -
Was ist ein Software Build?
Wenn Sie ein einfaches Computerprogramm entwickeln, das nur aus einer Quellcodedatei besteht, müssen Sie nur diese eine Datei kompilieren und verknüpfen, um eine ausführbare Datei zu erstellen. Dieser Vorgang ist sehr einfach.
Normalerweise ist dies nicht der Fall. Ein typisches Softwareprojekt besteht aus Hunderten oder sogar Tausenden von Quellcodedateien. Das Erstellen eines ausführbaren Programms aus diesen Quelldateien ist eine komplizierte und zeitaufwändige Aufgabe.
Sie müssen "Build" -Software verwenden, um ein ausführbares Programm zu erstellen. Der Prozess heißt "Software Build".
Rauchprüfung
Smoke Testing ist eine Softwaretesttechnik, die nach dem Erstellen der Software durchgeführt wird, um zu überprüfen, ob die kritischen Funktionen der Software ordnungsgemäß funktionieren. Es wird ausgeführt, bevor detaillierte Funktions- oder Regressionstests ausgeführt werden. Der Hauptzweck von Rauchtests besteht darin, eine fehlerhafte Softwareanwendung abzulehnen, damit das QA-Team keine Zeit damit verschwendet, defekte Softwareanwendungen zu testen.
Bei der Rauchprüfung wurden die Testfälle ausgewählt, um die wichtigsten Funktionen oder Komponenten des Systems abzudecken. Ziel ist es nicht, umfassende Tests durchzuführen, sondern zu überprüfen, ob die kritischen Funktionen des Systems einwandfrei funktionieren.
Ein typischer Rauchtest wäre beispielsweise: - Stellen Sie sicher, dass die Anwendung erfolgreich gestartet wurde. Überprüfen Sie, ob die GUI reagiert. Usw.
SCHLÜSSELUNTERSCHIED
- Smoke Testing hat das Ziel, die „Stabilität“ zu überprüfen, während Sanity Testing das Ziel hat, die „Rationalität“ zu überprüfen.
- Rauchtests werden sowohl von Entwicklern als auch von Testern durchgeführt, während Sanity Tests von Testern durchgeführt werden.
- Smoke Testing überprüft die kritischen Funktionen des Systems, während Sanity Testing die neuen Funktionen wie Fehlerkorrekturen überprüft.
- Rauchtests sind eine Teilmenge der Abnahmetests, während Sanity-Tests eine Teilmenge der Regressionstests sind.
- Rauchtests werden dokumentiert oder per Skript ausgeführt, Sanity-Tests hingegen nicht.
- Rauchtests überprüfen das gesamte System von Ende zu Ende, während Sanity Tests nur eine bestimmte Komponente überprüfen.
Was ist Sanity Testing?
Sanity-Tests sind eine Art von Softwaretests, die nach Erhalt eines Software-Builds mit geringfügigen Änderungen des Codes oder der Funktionalität durchgeführt werden, um sicherzustellen, dass die Fehler behoben wurden und aufgrund dieser Änderungen keine weiteren Probleme auftreten. Ziel ist es festzustellen, dass die vorgeschlagene Funktionalität ungefähr wie erwartet funktioniert. Wenn der Sanity-Test fehlschlägt, wird der Build abgelehnt, um Zeit und Kosten für strengere Tests zu sparen.
Das Ziel ist "nicht", die neue Funktionalität gründlich zu überprüfen, sondern festzustellen, dass der Entwickler bei der Erstellung der Software eine gewisse Rationalität (Vernunft) angewendet hat. Zum Beispiel, wenn Ihr wissenschaftlicher Rechner das Ergebnis 2 + 2 = 5 liefert! Dann macht es keinen Sinn, die erweiterten Funktionen wie sin 30 + cos 50 zu testen.
Rauchprüfung gegen Vernunftprüfung - Hauptunterschiede
Es folgt der Unterschied zwischen Sanity- und Smoke-Tests:
Rauchprüfung | Sanity Testing |
---|---|
Rauchprüfungen werden durchgeführt, um sicherzustellen, dass die kritischen Funktionen des Programms einwandfrei funktionieren | Sanity Testing wird durchgeführt, um zu überprüfen, ob die neuen Funktionen / Fehler behoben wurden |
Ziel dieser Tests ist es, die "Stabilität" des Systems zu überprüfen, um strengere Tests durchführen zu können | Ziel der Tests ist es, die "Rationalität" des Systems zu überprüfen, um strengere Tests durchführen zu können |
Dieser Test wird von den Entwicklern oder Testern durchgeführt | Sanity-Tests beim Testen von Software werden normalerweise von Testern durchgeführt |
Rauchtests werden normalerweise dokumentiert oder per Skript ausgeführt | Sanity-Tests sind normalerweise nicht dokumentiert und nicht geschrieben |
Rauchtests sind eine Teilmenge der Abnahmetests | Sanity Testing ist eine Teilmenge des Regressionstests |
Die Rauchprüfung übt das gesamte System von Ende zu Ende aus | Bei Sanity-Tests wird nur die bestimmte Komponente des gesamten Systems trainiert |
Rauchtests sind wie allgemeine Gesundheitsuntersuchungen | Sanity Testing ist wie eine spezialisierte Gesundheitsuntersuchung |
Zu beachtende Punkte.
- Sowohl Sanity- als auch Smoke-Tests sind Möglichkeiten, um Zeit- und Arbeitsverschwendung zu vermeiden, indem schnell festgestellt wird, ob eine Anwendung zu fehlerhaft ist, um strenge Tests zu verdienen.
- Die Rauchprüfung wird auch als Testerabnahmetest bezeichnet.
- Rauchtests, die an einem bestimmten Build durchgeführt werden, werden auch als Build-Überprüfungstest bezeichnet .
- Eine der besten Branchenpraktiken ist die Durchführung eines täglichen Build- und Rauchtests in Softwareprojekten.
- Sowohl Rauch- als auch Gesundheitstests können manuell oder mit einem Automatisierungstool durchgeführt werden . Wenn automatisierte Tools verwendet werden, werden die Tests häufig von demselben Prozess initiiert, der den Build selbst generiert.
- Gemäß den Testanforderungen müssen Sie möglicherweise sowohl Sanity- als auch Smoke-Tests im Software-Build ausführen. In solchen Fällen führen Sie zuerst Rauchtests durch und fahren dann mit Sanity Testing fort. In der Industrie werden Testfälle für Sanity Testing üblicherweise mit denen für Rauchtests kombiniert, um die Testdurchführung zu beschleunigen. Daher ist es üblich, dass die Begriffe häufig verwechselt und austauschbar verwendet werden
Klicken Sie hier, wenn das Video nicht zugänglich ist
Lesen Sie mehr über Rauchtests in der Softwareentwicklung