Was ist der Unterschied zwischen Rauch und Sanity Testing?

Einführung

Smoke Testing und Sanity Testing sind die am meisten missverstandenen Themen in der Softwareentwicklung. Es gibt eine enorme Menge an Informationen im Internet zu diesem Thema, aber die meisten von ihnen scheinen verwirrend. Dieser Artikel wird Ihnen helfen, die Unterschiede klar zu verstehen und Ihre Verwirrung direkt anzugehen. Der Hauptunterschied zwischen beiden Arten von Tests kann durch das folgende Diagramm schnell verstanden werden. Was ist der Unterschied zwischen Rauch- und Gesundheitstests?

2. Was ist Software Build?

Wenn Sie ein einfaches Softwareprogramm entwickeln, das aus wenigen Zeilen Quellcode besteht, ist es einfach zu kompilieren und auszuführen. Dies ist jedoch nicht die tatsächliche Situation in Unternehmen. Ein typisches Softwareprogramm oder eine Anwendung besteht normalerweise aus 100 oder sogar 1000 Quellcodedateien. Das Erstellen eines ausführbaren Programms aus riesigen Quellcodedateien ist ebenfalls ein ziemlich komplizierter und zeitaufwändiger Prozess. Sie benötigen hier einen Build, um das ausführbare Programm zu generieren, und dieser vollständige Prozess wird im Software Engineering als „Software Build“ bezeichnet.

3. Was ist Rauchprüfung?

Smoke Testing ist eine spezielle Art von Tests, die beim Software-Build durchgeführt werden, um die kritischen Funktionen des Programms zu überprüfen. Dies geschieht in einem frühen Stadium, bevor Regressionstests oder andere detaillierte Tests für den Software-Build durchgeführt werden. Der Zweck von Smoke-Tests besteht darin, schlecht funktionierende Anwendungen abzulehnen, damit das QS-Team keine Zeit mit der Installation oder dem Testen einer Softwareanwendung verschwenden muss.

Beim Smoke Testing werden die Testfälle ausgewählt, um die kritischsten Funktionen der Anwendung oder Komponente des Systems zu definieren. Das Ziel ist hier klar, die kritischsten Funktionen des Systems zu überprüfen, ob sie einwandfrei funktionieren oder nicht.

Ein typischer Rauchtest beinhaltet beispielsweise:

Lesen: Interviewfragen für Automatisierungstests & die besten Antworten!

  • Überprüfung der Anwendung, ob sie erfolgreich gestartet wurde oder nicht,
  • Überprüfen Sie, ob die GUI der Anwendung reagiert oder nicht,
  • Überprüfen Sie, ob Finanztransaktionen gut abgeschlossen sind und mehr ….

Kurz gesagt, Smoke Testing stellt sicher, dass Build testbar ist oder nicht vom Entwicklungsteam empfangen wird. Es wird auch als „Tag 0“ -Prüfung bezeichnet und auf Gebäudeebene durchgeführt. Dies spart Zeit, da Sie nicht die gesamte Anwendung testen müssen, wenn die Kernfunktionen des Programms nicht funktionieren. Das Hauptaugenmerk wird also auf dem Kernanwendungsworkflow im Falle der Rauchtests liegen.

4. Was ist Sanity Testing?

Sanity Testing ist eine spezielle Art von Softwaretests, die nach Erhalt eines Software-Builds mit geringen Änderungen im Code oder in der Funktionalität durchgeführt wird, um festzustellen, ob bestimmte Fehler im Voraus behoben wurden, um Workflow-Probleme zu beheben. Das Ziel von Sanity-Tests besteht darin, festzustellen, dass die vorgeschlagenen Funktionen ungefähr wie erwartet funktionieren. Wenn der Sanity-Test fehlschlägt, wird der Build direkt abgelehnt, um Zeit und Kosten zu sparen, die mit strengeren Tests verbunden sind.

Das Ziel von Sanity-Tests besteht nicht darin, die Kernfunktionalitäten gründlich zu überprüfen, sondern festzustellen, dass der Entwickler beim Erstellen eines Softwareprogramms eine gewisse Rationalität angewendet hat. Zum Beispiel, wenn Ihr wissenschaftlicher Taschenrechner das Ergebnis von 2 + 2 = 5 fünft! für die Instanz müssen dann keine erweiterten Funktionen wie Trigonometrieberechnungen oder mehr überprüft werden.

Sanity-Tests werden während der Release-Phase durchgeführt, um die Hauptfunktionalitäten einer Anwendung zu überprüfen, ohne in die Tiefe zu gehen. Es wird als Teilmenge von Regressionstests bezeichnet. Es gibt bestimmte Fälle, in denen Regressionstests aus Zeitgründen nicht für den Build durchgeführt werden und Sanity-Tests als geeigneter angesehen werden, um die Hauptfunktionen zu überprüfen.

Wie führt man Rauch-vs. Gesundheitstests durch?

Wie man Rauch vs. Geistige Gesundheit testen?

6. Wie führt man Rauchtests durch?

Um die Rauchtests durchzuführen, müssen Sie Testfälle schreiben. Sie müssen nur die erforderlichen Testfälle auswählen, die bereits von Programmierern geschrieben oder definiert wurden. Bei der Rauchtestung ist es unser Hauptziel, uns auf den Anwendungsworkflow zu konzentrieren. So können wir Testfälle aus der Testsuite auswählen, die die wichtigsten Funktionen des Softwareprogramms abdecken. Im Allgemeinen wählen Tester nur einige Testfälle aus, deren Ausführung nicht länger als eine Stunde dauert. Lassen Sie uns das Konzept der Rauchtests anhand eines unten angegebenen Beispiels ein wenig genauer verstehen.

Lesen Sie: Was ist Softwaretest & Verschiedene Arten von Softwaretests?

Angenommen, Sie arbeiten an einem E-Commerce-Projekt. Wenn ein neuer Software-Build für den Test freigegeben wird, muss ein Software-Qualitätsingenieur sicherstellen, dass alle Kernfunktionalitäten einwandfrei funktionieren. Versuchen Sie im Falle einer E-Commerce-Website, Artikel in Ihren Warenkorb zu legen, um eine Bestellung aufzugeben. Dies ist heute der wichtigste Workflow für alle E-Commerce-Websites. Wenn Artikel erfolgreich hinzugefügt wurden und die Zahlung an den richtigen Händler erfolgt, können Sie sagen, dass der Build bestanden wurde. Jetzt können Sie funktionale Tests für denselben Build durchführen.

QA Software Testing Training

  • Keine Kosten für eine Demo-Klasse
  • Branchenexperte als Ihr Trainer
  • Verfügbar nach Ihrem Zeitplan
  • Kundensupport verfügbar

7. Wie führe ich Sanity-Tests durch?

Um Sanity-Tests durchzuführen, müssen Sie keine separaten Testfälle schreiben, die denen von Smoke-Tests ähneln. Sie müssen nur die erforderlichen Testfälle auswählen, die bereits von Programmierern geschrieben wurden. Tester müssen nur sicherstellen, dass die geplante Funktionalität nach Bedarf funktioniert.

Lassen Sie uns das obige Beispiel noch einmal in Bezug auf den Sanity-Test diskutieren. Angenommen, Sie arbeiten an einer E-Commerce-Website und es wird eine neue Funktion für die Suchfunktion veröffentlicht. Ihr Hauptaugenmerk liegt also darauf, zu überprüfen, ob die Suchfunktion einwandfrei funktioniert oder nicht. Sobald es gut getestet ist, gehen Sie zu anderen wichtigen Funktionen wie dem Zahlungsfluss über.

In jedem Projekt während der ersten Version fordert das Entwicklungsteam die Tester auf, den Build vollständig zu testen. Wenn der Build auf Akzeptanz oder Ablehnung getestet wird, handelt es sich um Rauchtests. Wenn der Build akzeptiert wird und weiter auf Hauptfunktionen getestet wird, handelt es sich um Sanity-Tests. Angenommen, derselbe Build enthält drei Module wie Login, Logout und Admin. Sie müssen diese Module auf ihre Grundfunktionen überprüfen, ohne tiefer zu gehen, dann ist es ein vernünftiger Test.

Smoke Testing vs Sanity Testing – Die wichtigsten Unterschiede

Smoke Testing Sanity Testing
Smoke testing stellt fest, dass die Kernfunktionalitäten des Programms absolut einwandfrei funktionieren. Sanity-Tests werden durchgeführt, um zu überprüfen, ob entweder neue Funktionen oder Fehler ordnungsgemäß behoben wurden, ohne tiefer zu gehen.
Das Ziel von Regressionstests ist es, die Stabilität des Systems zu überprüfen, um Regressionstests in der Zukunft zu verarbeiten. Das Ziel von Sanity-Tests ist es, die Rationalität des Systems zu überprüfen, um in Zukunft weitere Regressionstests durchzuführen.
Rauchtests werden entweder von Entwicklern oder Testern durchgeführt. Sanity-Tests werden nur von Testern durchgeführt.
Rauchtests werden normalerweise dokumentiert und mit Skripten versehen. Sanity testing ist nicht dokumentiert oder scripted.
Smoke testing ist eine Untergruppe von Akzeptanztests. Smoke Testing ist eine Teilmenge von Regressionstests.
Die Rauchtests konzentrieren sich von Ende zu Ende auf das gesamte System. Sanity Testing konzentrierte sich auf ausgewählte Komponenten eines Systems.
Rauchtests sind wie eine allgemeine Gesundheitsuntersuchung. Gesundheitstests sind wie ein spezieller Gesundheitscheck.

Lesen Sie: Perfekter Leitfaden für Testmethoden – Wissen Sie alles über Softwaretestmethoden?

Rauchprüfung vs. Sanity Testing – Wichtige Punkte zu beachten

  • Smoke Testing und sanity Testing sind Bemühungen, Zeit zu sparen, indem schnell festgestellt wird, ob eine Anwendung ordnungsgemäß funktioniert oder nicht. Außerdem wird sichergestellt, dass der Build für strenge Tests geeignet ist.
  • Sanity-Tests werden vom Tester durchgeführt und als Teilmenge der Akzeptanztests verwendet. Smoke-Tests werden von Entwicklern oder Testern durchgeführt und als Teilmenge strenger Tests betrachtet.
  • Rauchtests werden auf Gebäudeebene durchgeführt, um die Kernfunktionalitäten einer Anwendung zu überprüfen. Sanity-Tests werden auf Release-Ebene durchgeführt, um die Hauptfunktionen einer Anwendung zu überprüfen.
  • Eine der besten Branchenpraktiken ist die tägliche Durchführung von Build- und Smoke-Tests in Softwareprojekten.

Lernen Sie QA-Softwaretests auf einfachste Weise

  • Lernen Sie aus den Videos
  • Lernen Sie jederzeit und überall
  • Taschenfreundlicher Lernmodus
  • Kostenloses eBook verfügbar

Fazit

Sowohl Rauchtests als auch Sanity-Tests können entweder manuell ausgeführt werden oder ein Automatisierungstool verwenden. Wenn Automatisierungstools verwendet werden, werden Tests initiiert, um den Build automatisch zu generieren. Basierend auf den Softwareproduktanforderungen ist es möglich, Rauch- oder Sanity-Tests im selben Software-Build durchzuführen. In solchen Fällen sollten Sie zuerst Rauchtests durchführen, dann können Sie mit dem Sanity-Test fortfahren. In Branchen werden Testfälle für Sanity-Tests normalerweise mit anderen Testfällen kombiniert, um die Ausführung zu beschleunigen. Daher ist es üblich, diese Begriffe von Entwicklern austauschbar zu verwenden.

Ich hoffe, dass der Unterschied bei der Diskussion zwischen Rauchtests und Sanity-Tests klar ist. Um mehr über verschiedene Arten von Tests und deren praktische Durchführung zu erfahren, sollten Sie am QA-Zertifizierungsprogramm bei JanBask Training teilnehmen, um fundierte Kenntnisse über das Thema zu erhalten und zu lernen, wie Testfälle für den Software-Build entworfen werden.

    Janbask Training

    A dynamic, highly professional, and a global online training course provider committed to propelling the next generation of technology learners with a whole new way of training experience.

  • D

    Dai

    Wonderful Blog.

QA Testing Course
Upcoming Batches

02

Apr

Mon – Fri

6 Weeks

10

Apr

Mon – Fri

6 Weeks

Trending Courses

AWS

  • AWS & Fundamentals of Linux
  • Amazon Simple Storage Service
  • Elastic Compute Cloud
  • Databases Overview & Amazon Route 53

Kommende Klasse

13 Tage 09 Apr 2021

DevOps

  • Einführung in DevOps
  • GIT und Maven
  • Jenkins & Ansible
  • Docker und Cloud Computing

Upcoming Class

-1 day 26 Mar 2021

Data Science

  • Data Science Introduction
  • Hadoop and Spark Overview
  • Python & Intro to R Programming
  • Machine Learning

Upcoming Class

6 days 02 Apr 2021

Hadoop

  • Architecture, HDFS & MapReduce
  • Unix Shell & Apache Pig Installation
  • HIVE Installation & User-Defined Functions
  • SQOOP & Hbase Installation

Upcoming Class

6 days 02 Apr 2021

Salesforce

  • Salesforce Configuration Introduction
  • Security & Automation Process
  • Sales & Service Cloud
  • Apex Programming, SOQL & SOSL

Upcoming Class

-1 day 26 Mar 2021

    Einführung und Softwaretests

  • Lebenszyklus von Softwaretests
  • Automatisierungstests und API-Tests
  • Selenium Framework-Entwicklung mithilfe von Tests

Kommende Klasse

6 Tage 02 Apr 2021

Business Analyst

  • BA & Stakeholders Overview
  • BPMN, Requirement Elicitation
  • BA Tools & Design Documents
  • Enterprise Analysis, Agile & Scrum

Upcoming Class

0 day 27 Mar 2021

MS SQL Server

  • Introduction & Database Query
  • Programming, Indexes & System Functions
  • SSIS Package Development Procedures
  • SSRS Report Design

Upcoming Class

7 days 03 Apr 2021

Python

  • Eigenschaften von Python
  • Python-Editoren und IDEs
  • Datentypen und Variablen
  • Python Betrieb

Nächste Klasse

-1 Tag 26 Mär 2021

Artificial Intelligence

  • Components of AI
  • Categories of Machine Learning
  • Recurrent Neural Networks
  • Recurrent Neural Networks

Upcoming Class

14 days 10 Apr 2021

Machine Learning

  • Introduction to Machine Learning & Python
  • Maschinelles Lernen: Überwachtes Lernen
  • Maschinelles Lernen: Unsupervised Learning

Upcoming Class

27 days 23 Apr 2021

Tableau

  • Introduction to Tableau Desktop
  • Data Transformation Methods
  • Configuring tableau server
  • Integration with R & Hadoop

Upcoming Class

3 days 30 Mar 2021

Top 30 Manual Testing Interview Questions to know in 2020

Top 30 Manual Testing Interview Questions to know in 2020

Jan 09, 2018 160.6k

Sanity Testing Tutorial Guide for Beginner

Sanity Testing Tutorial Guide for Beginner

Aug 05, 2019 1.7k

What is STLC? Learn Software Testing Life Cycle Phases

What is STLC? Learn Software Testing Life Cycle Phases

Sep 11, 2019 1.5k

Beiträge suchen

QA-Testkurs
Bevorstehende Chargen

02

April

Mo – Fr

6 Wochen

10

Apr

Mon – Fri

6 Weeks

Receive Latest Materials and Offers on QA Testing Course

Related Posts

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.