Tests

Fallstudie: Software in Python entwickeln

Mark Pedigo

Principal Data Scientist

Roadmap

Roadmap, die zeigt, was im Projekt fertig ist und was startet.

Fallstudie: Software in Python entwickeln

Warum automatisiert testen?

  • Automatisierte, softwaregesteuerte Tests
  • Keine menschliche Intervention nötig
  • Von einfachen Checks bis zu umfassenden Bewertungen

Ein Roboter testet Code

Fallstudie: Software in Python entwickeln

Vorteile automatisierter Tests

  • Höhere Codequalität
  • Risikominimierung
  • Bessere User Experience
Fallstudie: Software in Python entwickeln

Was leisten Unit-Tests?

  • Einzelne Komponenten oder Funktionen separat testen
  • Fokus auf die kleinsten Teile einer Anwendung
  • Erwartete Ausgabe für eine Eingabe prüfen

Eine Lupe untersucht Bausteine

Fallstudie: Software in Python entwickeln

Was ist die Bibliothek pytest?

  • Beliebtes Testframework für Python
  • Unterstützt Unit-Testing
  • Bekannt für Einfachheit, Flexibilität und Features
Fallstudie: Software in Python entwickeln

Vorteile von pytest

  • Einfach und gut lesbar
  • Mächtige Fixtures
  • Integriert sich mit anderen Tools
Fallstudie: Software in Python entwickeln

Unit-Test – Beispiel

# math.py
def add(a, b):
  return a + b
# test_math.py
import pytest
def test_add():
    assert add(2, 3) == 5
    assert add(-1, 1) == 0
    assert add(0, 0) == 0
    assert add(-5, -7) == -12

In der Konsole ausführen:

pytest test_math.py

===== test session starts ===== collected 1 item test_math_functions.py . [100%] ====== 1 passed in 0.03s ======
Fallstudie: Software in Python entwickeln

Lass uns üben!

Fallstudie: Software in Python entwickeln

Preparing Video For Download...