Programmieren für technische Aufgaben – Automatisierte Tests für kleine Funktionen schreiben
Programmieren für technische Aufgaben – Automatisierte Tests für kleine Funktionen schreiben
QR-Code
Programmieren für technische Aufgaben – Automatisierte Tests für kleine Funktionen schreiben
Zielgruppe: Berufliche Ausbildung in Informatik, Mechatronik, Elektrotechnik und Automatisierungstechnik
Niveau: Grundlagen bis Anwendung
Lernzeit: ca. 90 Minuten
Kurzbeschreibung: Du lernst, kleine Python-Funktionen mit automatisierten Tests zu überprüfen. Im Mittelpunkt stehen Normalfälle, Grenzfälle und Fehlerfälle. Du arbeitest mit fiktiven technischen Messwerten, zwei lokalen Testlaboren, visualisierten Testdaten und interaktiven Übungen.
Lernziele:
- Testfälle aus technischen Anforderungen entwickeln.
- Grenzwerte und ungültige Eingaben systematisch prüfen.
- Automatisierte Modultests in Python schreiben und ausführen.
- Fehler erkennen, korrigieren und durch Regressionstests absichern.
- Testergebnisse nachvollziehbar dokumentieren.
Einleitung
Eine Funktion soll entscheiden, ob ein Messwert innerhalb eines erlaubten Bereichs liegt. Doch funktioniert sie auch direkt an den Grenzen?
Automatisierte Tests vergleichen tatsächliche Ergebnisse mit vorher festgelegten Erwartungen.

Die Testpyramide: Viele kleine Modultests bilden eine wichtige Grundlage der Softwarequalität.
Ein Modultest überprüft eine einzelne Funktion oder andere kleine Softwareeinheit. Er ersetzt keine Systemprüfung, kann aber Fehler früh sichtbar machen.
Wichtig für die Ausbildung: Alle folgenden Messwerte und Anlagenregeln sind erfunden. Die Beispiele steuern keine Geräte.
Lerneinheit 1: Einen technischen Prüfauftrag verstehen
Dauer: 10 Minuten
Ausbildungsfall: Temperaturprüfung eines Werkstücks
In einer fiktiven Ausbildungswerkstatt soll eine Funktion die Temperatur eines Werkstücks beurteilen.
Festgelegte Übungsregeln:
- Die Temperatur muss zwischen 18 °C und 24 °C liegen.
- Beide Grenzwerte gehören zum erlaubten Bereich.
- Ein gültiger Zahlenwert außerhalb des Bereichs liefert
False. - Ein unzulässiger Datentyp löst
TypeErroraus. - Unendliche Werte und NaN lösen
ValueErroraus.
Die Funktion heißt temperatur_freigabe(temp_c).
True bedeutet: Die fiktive Prüfregel ist erfüllt.
False bedeutet: Der gültige Zahlenwert liegt außerhalb des erlaubten Bereichs.
Das ist ausdrücklich keine Freigabe für eine echte Maschine.
Daten visualisieren
| Temperatur | Erwartetes Ergebnis | Testart |
|---|---|---|
| 17,9 °C | ❌ False | Unterhalb der Grenze |
| 18,0 °C | ✅ True | Untere Grenze |
| 21,0 °C | ✅ True | Normalfall |
| 24,0 °C | ✅ True | Obere Grenze |
| 24,1 °C | ❌ False | Oberhalb der Grenze |
| Text "21" | TypeError | Fehlerfall |
| NaN | ValueError | Fehlerfall |
Visueller Wertebereich:
Temperatur in °C 17,9 18 21 24 24,1 | | | | | X [==========●==========] X ungültig erlaubter Bereich ungültig X = außerhalb des erlaubten Zahlenbereichs ● = typischer Normalfall [ ] = eingeschlossene Grenzen
Basisaufgabe: Entscheide, ob 18 °C und 24 °C gültig sind, und begründe Deine Entscheidung.
Feedback: Beide Werte sind gültig, weil die Spezifikation die Grenzen einschließt. Eine Implementierung mit ausschließlich strengen Vergleichsoperatoren würde diese Anforderung verletzen.
Lerneinheit 2: Normalfälle, Grenzfälle und Fehlerfälle
Dauer: 15 Minuten
Normalfälle
Ein Normalfall überprüft typisches erwartetes Verhalten.
Beispiel: Bei 21 °C soll die Funktion True zurückgeben.
Ein gültiger Zahlenwert außerhalb des Freigabebereichs, etwa 17 °C, ist ebenfalls eine regulär verarbeitbare Eingabe. Das erwartete Ergebnis lautet dann False, nicht eine Ausnahme.
Grenzfälle
Grenzfälle überprüfen Übergänge zwischen verschiedenen Verhaltensbereichen.
Grenzwertanalyse: Besonders die Werte an den Bereichsgrenzen und unmittelbar daneben sind interessant.
Bei unserem Beispiel prüfen wir 17,9 °C, 18 °C, 24 °C und 24,1 °C.
Die Testwerte unmittelbar außerhalb der Grenzen sind hier Beispiele. Bei einer konkreten Messauflösung muss die kleinste zulässige Schrittweite aus der Spezifikation abgeleitet werden.
Äquivalenzklassen
Bei der Äquivalenzklassenbildung teilen wir Eingaben in Gruppen auf, für die dasselbe Verhalten erwartet wird.
Schematische Darstellung der Äquivalenzklassenbildung an einem anderen Rechenbeispiel.
Für unsere Temperaturfunktion unterscheiden wir drei Bereiche gültiger, endlicher Zahlen:
| Bereich | Beispiel | Erwartung |
|---|---|---|
| Unterhalb des Sollbereichs | 16 °C | False |
| Innerhalb des Sollbereichs | 20 °C | True |
| Oberhalb des Sollbereichs | 27 °C | False |
Fehlerhafte Datentypen bilden zusätzliche ungültige Eingabeklassen.
Fehlerfälle
Ein Fehlerfall prüft, wie eine Funktion mit unzulässigen Eingaben umgeht.
Beispiele:
"21": Text statt Zahl →TypeError.None: Fehlender Zahlenwert →TypeError.float("nan"): Kein endlicher Zahlenwert →ValueError.
Eine erwartete Ausnahme ist kein fehlgeschlagener Test. Der Test besteht, wenn genau das spezifizierte Verhalten eintritt.
Anwendungsaufgabe: Warum ist der Test mit 18 °C aussagekräftiger als ein zweiter Test mit 22 °C?
Feedback: 18 °C prüft zusätzlich, ob die untere Grenze korrekt eingeschlossen ist. Ein weiterer typischer Innenwert erkennt diesen möglichen Vergleichsfehler unter Umständen nicht.
Lerneinheit 3: Dein erstes lokales Python-Testlabor
Dauer: 25 Minuten
Lernvideo: Automatisierte Tests mit Python
Datamics: Python Tutorial – Code testen mit Unittest, deutsch.
Vertiefungsvideo:
Corey Schafer: Unit Testing Your Code with the unittest Module, englisch.
Sichere lokale Testumgebung A
Du benötigst eine lokal installierte Version von Python 3.8 oder neuer und einen Texteditor.
Erstelle einen neuen Ordner mit dem Namen labor_a.
labor_a/ ├── freigabe.py └── test_freigabe.py
Sicherheitsregel: Verwende ausschließlich diese fiktiven Werte und lokale Dateien. Verbinde das Projekt weder mit einer Produktivanlage noch mit externen Schnittstellen, Kundensystemen oder fremden Netzwerken.
Die Tests benötigen keine zusätzlichen Python-Pakete und keine Netzwerkverbindung.
Schritt 1: Die Funktion programmieren
Speichere den folgenden vollständigen Code als freigabe.py.
import math
def temperatur_freigabe(temp_c):
if isinstance(temp_c, bool) or not isinstance(
temp_c, (int, float)
):
raise TypeError("Temperatur muss eine Zahl sein")
if not math.isfinite(temp_c):
raise ValueError("Temperatur muss endlich sein")
return 18 <= temp_c <= 24
Erklärung:
isinstance kontrolliert den Datentyp. Boolesche Werte werden ausgeschlossen, obwohl bool in Python von int abgeleitet ist.
math.isfinite prüft, ob der Wert weder unendlich noch NaN ist.
Die letzte Zeile prüft den erlaubten Bereich einschließlich seiner Grenzen.
Schritt 2: Automatisierte Tests schreiben
Speichere den folgenden Code im selben Ordner als test_freigabe.py.
import unittest
from freigabe import temperatur_freigabe
class FreigabeTests(unittest.TestCase):
def test_normalfall(self):
self.assertTrue(temperatur_freigabe(21))
def test_ausserhalb(self):
self.assertFalse(temperatur_freigabe(17))
self.assertFalse(temperatur_freigabe(25))
def test_grenzfaelle(self):
for wert, erwartet in [
(17.9, False),
(18, True),
(24, True),
(24.1, False)
]:
with self.subTest(wert=wert):
self.assertEqual(
temperatur_freigabe(wert),
erwartet
)
def test_fehlerfall_text(self):
with self.assertRaises(TypeError):
temperatur_freigabe("21")
def test_fehlerfall_nicht_endlich(self):
with self.assertRaises(ValueError):
temperatur_freigabe(float("nan"))
Die wichtigsten Testmethoden:
| Methode | Bedeutung |
|---|---|
assertTrue
|
Erwartet True |
assertFalse
|
Erwartet False |
assertEqual
|
Vergleicht Soll und Ist |
assertRaises
|
Erwartet eine bestimmte Ausnahme |
subTest
|
Kennzeichnet einzelne Prüfdaten innerhalb eines Tests |
Schritt 3: Tests ausführen
Öffne ein lokales Terminal im Ordner labor_a.
Führe aus:
python -m unittest discover -v
Unter Windows kannst Du bei entsprechender Installation alternativ py -m unittest discover -v verwenden.
Erwartetes Ergebnis:
test_ausserhalb ... ok test_fehlerfall_nicht_endlich ... ok test_fehlerfall_text ... ok test_grenzfaelle ... ok test_normalfall ... ok Ran 5 tests OK
Die genaue Reihenfolge und zusätzliche Ausgabetexte können sich unterscheiden.
Feedback: Die fünf Testmethoden prüfen mehrere konkrete Eingaben. Dass sie bestehen, bestätigt die geprüften Fälle, beweist aber nicht die vollständige Fehlerfreiheit.
Lerneinheit 4: Fehler finden und Regressionen verhindern
Dauer: 15 Minuten
Ein absichtlich eingebauter Fehler
Ändere in Deiner lokalen Kopie von freigabe.py ausschließlich die letzte Zeile zu:
return 18 < temp_c < 24
Führe die Tests erneut aus.
Beobachtung: Die Grenzwertprüfungen für 18 °C und 24 °C schlagen fehl.
Warum? Die Operatoren < schließen die Grenzwerte aus, obwohl die Spezifikation sie erlaubt.
Korrigiere die Zeile anschließend wieder:
return 18 <= temp_c <= 24
Führe alle Tests noch einmal aus.
Testgetriebene Entwicklung
Der Grundgedanke der testgetriebenen Entwicklung: Test schreiben, zum Bestehen bringen, anschließend den Code verbessern.
ANFORDERUNG
|
v
TEST SCHREIBEN
|
v
FEHLER SICHTBAR? ---- nein ---> Test prüfen
|
ja
|
v
CODE KORRIGIEREN
|
v
ALLE TESTS AUSFÜHREN
|
v
BESTANDEN
Ein Regressionstest prüft nach einer Änderung, ob bereits getestetes Verhalten weiterhin funktioniert.
Wichtige Unterscheidung:
| Testergebnis | Bedeutung |
|---|---|
| OK | Die getestete Erwartung wurde erfüllt |
| FAIL | Eine Testbehauptung wurde nicht erfüllt |
| ERROR | Bei der Testausführung trat ein unerwarteter Fehler auf |
Gestufte Hilfen
Hilfe 1 – Orientierung: Vergleiche die genaue Aufgabenstellung mit den Erwartungen in der Testtabelle.
Hilfe 2 – Eingrenzung: Untersuche zuerst die beiden Tests an den eingeschlossenen Bereichsgrenzen.
Hilfe 3 – Konkreter Hinweis: Prüfe den Unterschied zwischen < und <=.
Begründetes Feedback: Eine bestandene Normalfallprüfung mit 21 °C reicht nicht aus, um die fehlerhafte Variante aufzudecken. Erst die Grenzwerttests zeigen, dass die Implementierung von der Anforderung abweicht.
Lerneinheit 5: Zweites isoliertes Testlabor
Dauer: 15 Minuten
Transferfall: Stückzahl einer Prüfcharge
Eine zweite fiktive Ausbildungsaufgabe betrifft die Stückzahl einer Prüfcharge.
Die Regel lautet: Nur ganze Zahlen von 1 bis 5 sind gültig.
Erstelle einen neuen, getrennten Ordner labor_b und speichere diesen vollständigen Code als labor_b.py.
import unittest
def stueckzahl_ok(anzahl):
if type(anzahl) is not int:
raise TypeError("Stueckzahl muss ganzzahlig sein")
return 1 <= anzahl <= 5
class StueckzahlTests(unittest.TestCase):
def test_normal(self):
self.assertTrue(stueckzahl_ok(3))
def test_grenzen(self):
for wert, erwartet in [
(0, False),
(1, True),
(5, True),
(6, False)
]:
with self.subTest(wert=wert):
self.assertEqual(
stueckzahl_ok(wert),
erwartet
)
def test_fehler(self):
with self.assertRaises(TypeError):
stueckzahl_ok(2.5)
if __name__ == "__main__":
unittest.main()
Lokal ausführen:
python labor_b.py
Erwartetes Ergebnis: Drei erfolgreiche Testmethoden und OK.
Drei Übungsstufen
Basis: Ergänze einen Test mit der Eingabe 4. Erwartung: True, weil 4 innerhalb des erlaubten Bereichs liegt.
Anwendung: Ergänze einen Test mit True als Eingabe. Erwartung: TypeError, weil nur echte ganzzahlige Stückzahlen erlaubt sind und der Typ bool ausgeschlossen wird.
Transfer: Ändere die fiktive Regel so, dass Stückzahlen von 2 bis 8 erlaubt sind. Passe die Funktion und alle betroffenen Testerwartungen an.
Hilfe 1: Formuliere zuerst die neuen Anforderungen als Tabelle.
Hilfe 2: Untersuche die Werte 1, 2, 8 und 9.
Hilfe 3: Ändere den Vergleich zu 2 <= anzahl <= 8 und aktualisiere die Grenzwerttests.
Feedback: Nach der Regeländerung müssen 2 und 8 akzeptiert und 1 und 9 abgelehnt werden. Ein alter Test, der weiterhin die Stückzahl 1 erwartet, ist jetzt nicht mehr fachlich korrekt. Tests und Spezifikation müssen übereinstimmen.
Interaktive Aufgaben
Quiz: Teste Dein Wissen
Was ist das Hauptziel eines Modultests? (Eine einzelne Funktion oder kleine Softwareeinheit überprüfen) (!Ein vollständiges Produktionsnetzwerk überwachen) (!Eine Maschine ohne Freigabe starten) (!Alle möglichen Softwarefehler ausschließen)
Welche Eingabe ist ein typischer Normalfall unserer Temperaturprüfung? (21 Grad Celsius) (!Ein Text ohne Zahlenwert) (!Eine leere Eingabe) (!Ein unendlicher Zahlenwert)
Welches Ergebnis muss die Temperaturfunktion bei 18 Grad Celsius liefern? (True) (!False) (!TypeError) (!ValueError)
Welche Eingabe prüft den Bereich unmittelbar oberhalb der Obergrenze? (24 Komma 1 Grad Celsius) (!21 Grad Celsius) (!20 Grad Celsius) (!22 Grad Celsius)
Was soll bei der Texteingabe 21 in Anführungszeichen geschehen? (TypeError auslösen) (!Die Temperatur freigeben) (!Immer den Wert Null zurückgeben) (!Den Test kommentarlos überspringen)
Welche Methode prüft, ob zwei Ergebnisse gleich sind? (assertEqual) (!assertRaises) (!print) (!input)
Welche Methode verwendet man für eine erwartete Ausnahme? (assertRaises) (!assertTrue) (!assertFalse) (!subTest allein)
Welche Änderung würde die beiden gültigen Temperaturgrenzen ausschließen? (Strenge Vergleiche ohne Gleichheitszeichen verwenden) (!Den Normalwert erneut testen) (!Den Testnamen umbenennen) (!Die Testausgabe ausführlicher anzeigen)
Was kennzeichnet einen Regressionstest? (Bereits geprüftes Verhalten nach Änderungen erneut kontrollieren) (!Nur einmalig die Software installieren) (!Nur neue Funktionen dokumentieren) (!Tests nach jeder Änderung löschen)
Welche Aussage zur Testqualität ist richtig? (Bestandene Tests bestätigen das Verhalten der geprüften Fälle) (!Fünf erfolgreiche Tests beweisen absolute Fehlerfreiheit) (!Grenzwerte sind grundsätzlich unwichtig) (!Eine erwartete Ausnahme bedeutet immer einen fehlgeschlagenen Test)
Begründetes Quiz-Feedback: Achte besonders auf die Unterschiede zwischen gültigen Zahlen außerhalb des Freigabebereichs und unzulässigen Eingaben. Die erste Art liefert False, während die zweite eine spezifizierte Ausnahme auslösen kann. Die richtige Teststrategie ergibt sich immer aus den Anforderungen.
Memory
Ordne die Fachbegriffe ihren Bedeutungen zu.
| Normalfall | Typische gültige Eingabe |
| Grenzfall | Eingabe an einem Bereichsübergang |
| Fehlerfall | Unzulässige Eingabe prüfen |
| Sollwert | Erwartetes Prüfergebnis |
| Istwert | Tatsächlich erhaltenes Ergebnis |
| Assertion | Automatisierte Testbehauptung |
| Regressionstest | Wiederholte Prüfung nach einer Änderung |
Drag and Drop
| Ordne die richtigen Begriffe zu. | Thema |
|---|---|
| Normalfall | Typischer Wert innerhalb des gültigen Bereichs |
| Untergrenze | Kleinster gerade noch akzeptierter Zahlenwert |
| Obergrenze | Größter gerade noch akzeptierter Zahlenwert |
| Bereichsverletzung | Gültiger Zahlentyp außerhalb der erlaubten Werte |
| Fehlerfall | Eingabe mit unzulässigem Datentyp |
| Regressionstest | Erneute Prüfung nach einer Codeänderung |
Feedback: Ein außerhalb des erlaubten Bereichs liegender Zahlenwert ist nicht automatisch ein Programmfehler. Entscheidend ist die vereinbarte Reaktion der Funktion.
Kreuzworträtsel
| Modultest | Wie heißt der Test einer einzelnen Softwareeinheit? |
| Grenzwert | Wie heißt ein Wert direkt an einer Bereichsgrenze? |
| Fehlerfall | Wie nennt man einen Test mit einer unzulässigen Eingabe? |
| Testfall | Wie heißt eine konkrete Prüfung mit Eingabe und erwartetem Ergebnis? |
| Regression | Wie nennt man die unerwünschte Verschlechterung bereits funktionierender Software nach Änderungen? |
| Ausnahme | Wie heißt ein durch raise ausgelöstes Fehlersignal in Python? |
LearningApps
Ergänzende interaktive Übungen zum Themenfeld:
Hinweis: Dies ist eine externe Übungssuche, kein lokaler Python-Code-Runner. Die Inhalte sind nicht Bestandteil der geprüften lokalen Testprogramme. Externe Übungen nur nach freiwilliger Freigabe durch Lehrkraft oder Lernende verwenden.
Lückentext
Offene Aufgaben
Bearbeite die Aufgaben ausschließlich mit fiktiven Daten und lokal ausführbaren Programmen. Dokumentiere neben dem Ergebnis auch Deine Begründung.
Leicht
- Testfalltabelle: Erstelle eine Tabelle mit sechs Temperaturwerten und den zugehörigen Soll-Ergebnissen.
- Normalfälle: Erfinde zwei zusätzliche gültige Normalwerte und erkläre, warum sie keine Grenzen testen.
- Grenzwerte markieren: Zeichne den erlaubten Temperaturbereich und kennzeichne die unmittelbar angrenzenden Testwerte.
- Python-Test: Ergänze im ersten Testlabor einen weiteren Normalfalltest und führe alle Tests aus.
Standard
- Fehlerfälle: Ergänze einen Test für die Eingabe None und begründe die erwartete Ausnahme.
- Testprotokoll: Dokumentiere Testname, Eingabe, Erwartung, tatsächliches Ergebnis und Status für einen lokalen Testlauf.
- Fehlerreproduktion: Baue den Vergleichsfehler mit ausgeschlossenen Grenzen ein, dokumentiere die fehlgeschlagenen Tests und korrigiere ihn.
- Testklassen: Entwickle für das zweite Testlabor einen Testkatalog für gültige und ungültige Stückzahlen.
Schwer
- Test zuerst: Entwickle eine neue fiktive Prüffunktion für einen Zahlenbereich. Schreibe die Tests vor der Implementierung und dokumentiere die Testläufe.
- Fehleranalyse: Vergleiche zwei fehlerhafte Implementierungen und beurteile, welche Testfälle die jeweiligen Fehler entdecken.
- Testlabor erweitern: Ergänze eine reine Rechenfunktion zur Umrechnung von Millimetern in Meter und teste Normalwerte, Null, negative Zahlen sowie unzulässige Eingaben anhand einer selbst festgelegten Spezifikation.
- Ausbildungsprojekt: Erstelle ein kurzes Erklärvideo oder eine Bildschirmaufnahme, die den Weg von der technischen Anforderung über Testfälle bis zur Korrektur eines Fehlers zeigt. Verwende nur die lokalen Übungsdateien.


Lernkontrolle
Bearbeite die folgenden Aufgaben schriftlich und mit geeigneten lokalen Codebeispielen.
- Zusammenhänge erklären: Eine Funktion besteht alle Normalfalltests, scheitert jedoch an der unteren Grenze. Erkläre die mögliche Ursache und entwirf einen passenden Regressionstest.
- Testfälle optimieren: Du hast zwanzig mögliche Messwerte, darfst aber zunächst nur sechs prüfen. Wähle begründet besonders aussagekräftige Werte aus.
- Verhalten bewerten: Vergleiche zwei Funktionen, von denen eine bei Texteingaben False zurückgibt und die andere TypeError auslöst. Erkläre, warum keine Reaktion ohne Kenntnis der Spezifikation grundsätzlich richtig ist.
- Anforderungsänderung: Der erlaubte Temperaturbereich wird in einer neuen fiktiven Spezifikation auf 19 °C bis 23 °C verkleinert. Welche Änderungen sind an Tests und Funktion erforderlich?
- Regression analysieren: Nach einer Codeverbesserung schlägt ein früher erfolgreicher Test fehl. Entwickle einen systematischen Plan zur Fehlersuche.
- Aussagekraft beurteilen: Ein Testprogramm meldet sämtliche Tests erfolgreich. Erkläre, warum zusätzliche Tests dennoch nötig sein können.
Bewertungsschwerpunkte: Fachlich richtige Begründung, Bezug zur Spezifikation, geeignete Testdaten, reproduzierbare Ausführung, sinnvolle Fehlerdiagnose und sichere Durchführung.
Lernnachweis
Für einen erfolgreichen Lernnachweis erstellst Du eine kleine, vollständig lokale Testmappe.
Diese Bestandteile gehören dazu:
- Eine klar beschriebene fiktive technische Anforderung.
- Eine lauffähige Python-Funktion ohne externe Geräte- oder Netzwerkschnittstellen.
- Ein automatisierter Normalfalltest.
- Mindestens vier begründete Grenzwertprüfungen.
- Mindestens zwei Tests für unzulässige Eingaben.
- Eine Testfalltabelle mit Soll- und Ist-Ergebnissen.
- Ein dokumentierter Fehler mit anschließender Korrektur.
- Ein erfolgreicher erneuter Testlauf.
- Eine kurze Reflexion zu Grenzen und Aussagekraft der Tests.
Möglicher Bewertungsmaßstab:
| Kompetenzbereich | Gewichtung |
|---|---|
| Anforderungen und Testfalldesign | 30 % |
| Lauffähige automatische Tests | 30 % |
| Fehleranalyse und Korrektur | 20 % |
| Dokumentation und Reflexion | 20 % |
Erfolgsmerkmal: Du kannst nicht nur zeigen, dass Tests funktionieren, sondern begründen, weshalb genau diese Testfälle geeignet sind.
OERs zum Thema
Wikipedia: Modultest
Fachlich geprüfte Lernquellen
- Python-Dokumentation: unittest – Testklassen, Assertions, Ausnahmen und Testausführung.
- Python-Dokumentation: math – Bedeutung von math.isfinite.
- Python-Dokumentation: Fehler und Ausnahmen – Verwendung von raise und Ausnahmetypen.
- German Testing Board: Certified Tester 4.0 – Fachliche Grundlage für Testentwurfsverfahren.
- ISTQB: Standardglossar des Softwaretestens – Anerkannte Fachbegriffe.
- Modultest – Grundlagen automatisierter Tests einzelner Komponenten.
- Softwaretest – Einordnung des Testens in die Softwareentwicklung.
- Testautomatisierung – Nutzen automatisierter Wiederholungsprüfungen.
Mediennachweise und Nutzungsrechte
Die folgenden Abbildungen stammen aus Wikimedia Commons. Ihre Dateiseiten dokumentieren Urheber und freie Lizenzen.
- Testing Pyramid.svg – Abbe98, CC BY-SA 4.0.
- Boundary value analysis one.jpg – Amrinarin, CC BY-SA 4.0.
- ECP.png – Nmondal, CC BY-SA 3.0.
- Test-driven development.svg – Excirial und Bearbeitung durch Jarozwj, CC BY-SA 3.0 beziehungsweise weitere auf Commons dokumentierte Lizenzoptionen.
Lizenzhinweis: Bei Wiederverwendung und Bearbeitung die jeweilige Namensnennung, Lizenzverlinkung und gegebenenfalls die Weitergabe unter gleichen Bedingungen beachten. Die Dateiseiten sind für die vollständigen Lizenzbedingungen maßgeblich.
Videos:
- Datamics: Python Tutorial – Code testen mit Unittest – Externes Lernvideo.
- Corey Schafer: Python Tutorial – Unit Testing Your Code – Externes Lernvideo.
Für YouTube-Inhalte gelten die Rechte und Nutzungsbedingungen der jeweiligen Rechteinhaber. Die Einbettung bedeutet keine freie Lizenz zur Weiterverbreitung der Videodateien.
Datenschutz und sichere Durchführung: Externe Video- und iFrame-Angebote können beim Aufruf Daten an ihre Anbieter übertragen. Für die Programmieraufgaben sind sie nicht erforderlich. Der Python-Code wird ausschließlich lokal mit erfundenen Werten ausgeführt. Eine Verbindung zu Produktivanlagen, Fremdsystemen, Kundendaten oder Zugangsdaten ist weder vorgesehen noch erlaubt.
Verknüpfte Lernbereiche
aiMOOC-Projekte
Schulfach+


aiMOOCs


aiMOOC Projekte


MOOCwiki · Deutsch
Nach dem Lernen ist vor dem Lernen
Entdecke direkt den nächsten Lernkurs. Weitere Inhalte erscheinen, wenn Du weiter nach unten scrollst.
Zur MOOCwiki-HauptseiteMediathek
Mediathek wird aus dem Wiki geladen ...
Keine passenden Inhalte gefunden. Bitte ändere Suche oder Filter.
NEWSLernweltNOAH fragen