Kursinhalt
Einführung in Manuelles Testen & QA in der Webentwicklung
Einführung in Manuelles Testen & QA in der Webentwicklung
Was Ist Softwaretest & QA?
In den frühen Tagen der Computertechnik war der Entwicklungsprozess relativ unstrukturiert und informell, es fehlten Verfahren, was gelegentlich zu Budgetüberschreitungen oder allgemein minderwertiger Software führte. Im Laufe der Jahre führte dies zu strukturierteren Ansätzen in der Softwareentwicklung.
Softwaretest
Softwaretest ist entscheidend, da ungetestete oder schlecht getestete Software zu erheblichen Verlusten führen kann. 1996 explodierte die Ariane-5-Rakete, die von der Europäischen Weltraumorganisation (ESA) zum Start von Satelliten entwickelt wurde, 37 Sekunden nach dem Start, was zu einem Verlust von 500 Millionen Dollar führte. Der Fehler war auf einen Softwarefehler im Navigationssystem zurückzuführen, bei dem unzureichend getestete Software von der Ariane 4 wiederverwendet wurde. Dies wurde durch einen Überlauffehler verursacht, als eine 64-Bit-Gleitkommazahl in eine 16-Bit-Ganzzahl umgewandelt wurde, die die größere Beschleunigung der Ariane 5 nicht bewältigen konnte.
SDLC
Software Development Life Cycle, auch bekannt als SDLC, ist ein Softwareentwicklungsprozess oder genauer gesagt ein Rahmenwerk, unter dem verschiedene Entwicklungsprozesse kategorisiert werden, einige Beispiele dafür sind Scrum und die traditionelle Wasserfall-Methode. Alle diese Prozesse folgen den Kernphasen des SDLC, sind jedoch auf die spezifischen Bedürfnisse verschiedener Projekttypen zugeschnitten.
Die sieben Kernphasen des Software Development Life Cycle sind wie folgt zusammengefasst:
- Planung: Verstehen, was gebaut werden muss, und die Ziele des Projekts festlegen;
- Analyse: Die Anforderungen des Projekts untersuchen und herausfinden, was genau in Bezug auf Geräte- oder Serverspezifikationen, Kostenanforderungen und andere projektspezifische Faktoren benötigt wird.
- Design: Einen Entwurf erstellen, wie das Projekt aussehen und funktionieren wird. Oft wird in dieser Phase ein visueller Prototyp für die Anwendung erstellt.
- Entwicklung: Den tatsächlichen Code schreiben, um die Software zu erstellen;
- Testen: Die Software gründlich testen und sicherstellen, dass sie den Anforderungen entspricht. Bei Bedarf Korrekturen vornehmen. Qualitätssicherung und Testen fallen in diese Kategorie;
- Bereitstellung: Die Software für Benutzer freigeben;
- Wartung: Die Software reibungslos am Laufen halten, indem Probleme behoben und sie bei Bedarf aktualisiert wird;
Diese Phasen müssen nicht unbedingt in der angegebenen Reihenfolge ablaufen und können sich sogar überschneiden. Zum Beispiel wird Testen normalerweise während der Entwicklungsphase durchgeführt, und Qualitätssicherung erstreckt sich über den gesamten SDLC.
QA
Qualitätssicherung, kurz QA, umfasst den umfassenderen Prozess, sicherzustellen, dass der Entwicklungsprozess effizient mit minimalen Fehlern abläuft, während qualitativ hochwertige Arbeit produziert wird und die Anwendung den erforderlichen Standards entspricht. Ein QA-Spezialist hat in jeder Entwicklungsphase eine Rolle, von der Planung bis zur Bereitstellung und Wartung der Software. Qualitätssicherung ist mehr prozessorientiert, was bedeutet, dass sie sich mehr auf das Management und die Verbesserung des Entwicklungsprozesses konzentriert, aber nicht darauf beschränkt ist.
Qualitätssicherung umfasst die Definition von Standards und Methoden für die Entwicklung, die Planung von Testfällen und Teststrategien, die Identifizierung und Behebung von Fehlern, die Durchführung von Code-Reviews und die kontinuierliche Überwachung und Verbesserung des Entwicklungsprozesses.
Andererseits ist (Software-)Testen ein Teilbereich der Qualitätssicherung, der sich mehr auf die Durchführung von Tests konzentriert, um Fehler, Bugs oder Defekte in der Software zu identifizieren. Testen zielt darauf ab, sicherzustellen, dass die Funktionen gemäß den Anforderungen korrekt funktionieren.
1. Im Kontext der Softwareentwicklung, wofür steht QA?
2. Welche der folgenden Aussagen beschreibt die Qualitätssicherung (QA) am besten?
3. Welche Aussage über das Testen ist wahr?
Danke für Ihr Feedback!