✅ The verified answer to this question is available below. Our community-reviewed solutions help you understand the material better.
Testen ist die systematische Suche nach Fehlern. Damit soll ein möglichst sicherer Umgang mit dem Programm gewährleistet werden. Nachdem alle Programme von Menschen entwickelt werden, kommen Fehler in Programmen vor. Je mehr Zeilen ein Programm besitzt, desto wahrscheinlicher ist das Auftreten von Fehlern. Es gibt zwei wichtige Arten:
Syntax-Fehler: Programmanweisungen, die nicht den Regeln der Programmiersprache entsprechend geschrieben wurden; Solche Fehler kann der Compiler gut erkennen. Sie werden deswegen auch als Compiler-Fehler oder auch grammatikalische Fehler bezeichnet.
Semantik-Fehler: Fehler, die in der Bedeutung des Programms liegen, d.h. in der Programm-Logik. Diese Fehler können vom Compiler nicht erkannt werden. Sie werden deshalb oft auch als Logik-Fehler oder umgangssprachlich als Bugs bezeichnet.
Beim Testen geht es um das Aufspüren von semantischen Fehlern.
Damit Fehler gefunden werden können, muss ein Programmablauf immer wieder mit verschiedensten Szenarien durchgespielt werden. Um die Chancen zu erhöhen, mit diesen Szenarien auch wirklich die Fehler zu finden, müssen diese Szenarien nach einem bestimmten System entwickelt werden. Je nach Herangehensweise werden prinzipiell 2 Arten von Tests unterschieden:
Black-Box-Testen: Dabei wird das Programm als "schwarze Box" betrachtet, dessen Innenleben nicht bekannt ist. Allein aus der Programmbeschreibung bzw. Aufgabenstellung werden die Szenarien abgeleitet, die für das Testen herangezogen werden.
White-Box-Testen: Hier werden die Testfälle und Testverfahren aus dem Wissen über den internen Aufbau des Programms abgeleitet.
Da oft keine klaren Grenzen gezogen werden können, wurde als Begriff Gray-Box-Testen eingeführt bzw. wird in moderner Literatur die obige Unterscheidung gar nicht mehr getroffen (vgl. ; Paul Ammann, Jeff Offutt; Cambridge University Press, 2016).
Ein Zugang, der von vielen Anfängern verwendet wird, ist das "Ausprobieren" von Software. Beim Ausprobieren wird oft nur ein einziger typischer Programmablauf durchgeführt und wenn dieser das gewünschte Ergebnis liefert, wird das Ausprobieren beendet. Die Wahrscheinlichkeit dabei Fehler zu finden ist nicht sehr groß.
Im Gegensatz zum Ausprobieren werden beim Testen die Fehler gesucht.
Das Testen dient nicht dazu, -Fehler aufzuspüren, denn diese werden vom Compiler erkannt.
Beim Testen können hingegen logische Fehler, d.h. -Fehler, gefunden werden.
Die einfachere Herangehensweise beim Testen ist das -Testen, weil dabei nur von der Aufgabenstellung bzw. der Programmbeschreibung ausgegangen wird.
Beim -Testen wird auf die genauen Programmablauf im Quellcode eingegangen, um die Testszenarien zu entwerfen.
Da aber oft die Entwickler selbst die Tests entwerfen und dabei natürlich die Kenntnis über den Quellcode einfließen lassen, spricht man auch öfters von -Testen.
Ausprobieren ist mit Testen gleichzusetzen, da das Ausprobieren oft nur ein Szenario umfasst und nicht systematisch abläuft.
Get Unlimited Answers To Exam Questions - Install Crowdly Extension Now!