Unit-Tests erstellen, die echte Fehler erkennen.
Unit-Tests sollten erwartetes Verhalten und bedeutsame Grenzen ausdrücken. Übernimm nicht einfach die Formel der Implementierung in den Test.
Passe den Ablauf an deine Aufgabe an.
Leite das erwartete Verhalten aus dem Funktionsvertrag ab und wähle bedeutsame normale, Grenz- und Fehlerfälle. Nutze bekannte Ergebnisse oder unabhängige Fixtures und vermeide Assertions, die nur die Berechnung der Implementierung wiederholen.
- Was du bereitstellst
- Funktionsimplementierung und Testframework.
- Was du erhältst
- Aussagekräftige Tests für Verhalten und Grenzfälle.
Sieh dir Eingabe und Ergebnis an.
Beispielhafte Ein- und Ausgabe · ein Lehrbeispiel, kein tatsächlicher WebAct-Durchlauf
Beispiel Eingabe
Write pytest tests for calculator.add(a, b). It returns the sum of two integers. Required cases: positive values, zero, negative values.
Vollständiges Beispiel
# test_calculator.py
import pytest
from calculator import add
@pytest.mark.parametrize("a,b,expected", [(2, 3, 5), (0, 0, 0), (-2, 3, 1)])
def test_add(a, b, expected):
assert add(a, b) == expected
Run in the project with pytest installed: python -m pytest test_calculator.pyLade diese Eingabe in den Prompt und kopiere ihn zum Ausprobieren nach WebAct. Dein Ergebnis kann vom Beispiel abweichen.
Entscheidungen und Fehlerbehebung.
Sollte ein generierter Unit-Test die Formel der Funktion duplizieren?
Nutze möglichst unabhängig bekannte Erwartungen. Derselbe Fehler im Test kann eine falsche Implementierung geprüft erscheinen lassen.
Warum bestehen alle Tests, während der eigentliche Fehler bleibt?
Prüfe, ob Tests die Fehlerbedingung und den tatsächlichen Vertrag abdecken. Eine hohe Testanzahl belegt keine relevante Abdeckung.
Quelle für diesen Arbeitsablauf.
Probiere es mit deiner eigenen Quelle.
Ersetze das Beispiel im Aufgaben-Prompt durch dein Material. Behalte nötige Anforderungen bei und kopiere die Aufgabe nach WebAct.
Aufgabe anpassen und kopieren ↑