- 1 Abschnitt
- 7 Lektionen
- Um den Kurs in deinem Profil zu hinterlegen klicke oben auf Starten
Einführung in Testkonzepte
Testen ist der Prozess der Überprüfung eines Systems oder einer Komponente, um sicherzustellen, dass sie die spezifizierten Anforderungen erfüllt. Ziel ist es, Fehler zu finden und die Qualität des Produkts zu gewährleisten.
Ziele des Testens:
- Fehler finden: Identifizieren von Defekten, bevor die Software in den Produktivbetrieb geht.
- Qualität sicherstellen: Sicherstellen, dass die Software zuverlässig und funktionsfähig ist.
- Vertrauen in die Software aufbauen: Vertrauen bei den Benutzern und Entwicklern schaffen.
- Anforderungen validieren und verifizieren: Sicherstellen, dass die Software den spezifizierten Anforderungen entspricht.
Arten von Tests:
| Art des Tests | Beschreibung |
|---|---|
| Unit-Test | Testen einzelner Softwarekomponenten oder Module. |
| Integrationstest | Überprüfung, ob unterschiedliche Module zusammenarbeiten. |
| Systemtest | Gesamtsystem wird getestet, um zu prüfen, ob es den Anforderungen entspricht. |
| Abnahmetest | Überprüfung durch den Endbenutzer, um sicherzustellen, dass das System den Geschäftsanforderungen entspricht und einsatzbereit ist. |
Beispiel:
Ein Unternehmen entwickelt ein Netzwerküberwachungssystem zur Überwachung der Netzwerkgeräte und -dienste. Das System hat verschiedene Module wie „Geräte hinzufügen“, „Geräte anzeigen“ und „Geräte entfernen“. Während der Entwicklung muss das Unternehmen sicherstellen, dass jede Funktion einwandfrei funktioniert und alle Module zusammenarbeiten.
Beispiel für ein Testkonzept:
Nehmen wir an, wir entwickeln ein Netzwerküberwachungssystem. Wir wollen sicherstellen, dass die Funktionalität „Gerät hinzufügen“ korrekt funktioniert.
Testkonzept für die Funktion „Gerät hinzufügen“:
Testziele:
- Sicherstellen, dass ein Netzwerkgerät erfolgreich hinzugefügt wird.
- Überprüfen, dass keine Geräte ohne erforderliche Informationen hinzugefügt werden können.
Teststrategie:
- Manuelle Tests für die Benutzeroberfläche.
- Automatisierte Unit-Tests für die Backend-Logik.
Testarten:
- Unit-Tests: Überprüfen die Funktionalität auf Code-Ebene.
- Integrationstests: Überprüfen die Interaktion zwischen Frontend und Backend.
- Systemtests: Überprüfen das gesamte System, einschließlich der Netzwerkverbindungen.
Testumgebung:
- Entwicklungsumgebung mit simulierten Netzwerkgeräten.
- Testnetzwerk mit verschiedenen Geräten und Konfigurationen.
Testfälle:
| Testfall-ID | Beschreibung | Erwartetes Ergebnis |
|---|---|---|
| TC-01 | Gerät ohne IP-Adresse hinzufügen | Fehlermeldung „IP-Adresse ist erforderlich“ |
| TC-02 | Gerät mit gültigen Informationen hinzufügen | Bestätigung „Gerät hinzugefügt“ |
| TC-03 | Gerät mit ungültiger IP-Adresse hinzufügen | Fehlermeldung „Ungültige IP-Adresse“ |
| TC-04 | Gerät mit bereits vorhandener IP-Adresse hinzufügen | Fehlermeldung „IP-Adresse bereits vorhanden“ |
Beispiel-Code für einen Unit-Test (Python):
# Beispielcode für eine Funktion, die ein Gerät hinzufügt
def add_device(device_name, ip_address):
if not ip_address:
return "IP-Adresse ist erforderlich"
if not validate_ip(ip_address):
return "Ungültige IP-Adresse"
if device_exists(ip_address):
return "IP-Adresse bereits vorhanden"
# Füge das Gerät hinzu
return "Gerät hinzugefügt"
def validate_ip(ip_address):
# Überprüft, ob die IP-Adresse gültig ist (vereinfachte Version)
parts = ip_address.split(".")
return len(parts) == 4 and all(0 <= int(part) < 256 for part in parts)
def device_exists(ip_address):
# Überprüft, ob das Gerät bereits existiert (Mock-Funktion)
existing_devices = ["192.168.1.1", "192.168.1.2"]
return ip_address in existing_devices
# Unit-Test für die Funktion
def test_add_device():
assert add_device("Switch1", "") == "IP-Adresse ist erforderlich" # Leere IP-Adresse
assert add_device("Switch2", "192.168.1.3") == "Gerät hinzugefügt" # Gültige IP-Adresse
assert add_device("Switch3", "999.999.999.999") == "Ungültige IP-Adresse" # Ungültige IP-Adresse
assert add_device("Switch4", "192.168.1.1") == "IP-Adresse bereits vorhanden" # Bereits vorhandene IP-Adresse
# Tests ausführen
test_add_device()
