Überblick über automatisiertes Testen

Fallstudie: Software in Python entwickeln

Mark Pedigo

Principal Data Scientist

Roadmap

Roadmap, die zeigt, welche Teile des Projekts fertig sind und welche wir starten.

Fallstudie: Software in Python entwickeln

Automated Testing und der Entwicklungs-Workflow

  • Korrekte, vorhersagbare Ergebnisse
  • Vordefinierte Testfälle
  • Automatische Ausführung

Ein Computerbildschirm mit den Worten „automated testing", umgeben von Bugs und Zahnrädern – Sinnbild für automatisiertes Testen.

Fallstudie: Software in Python entwickeln

Die Bibliothek doctest

  • Automatisiertes Testen: doctest, pytest
  • Docstrings zur Codebeschreibung nutzen
  • doctest: Docstring-Beispiele prüfen
Fallstudie: Software in Python entwickeln

Funktionen der Bibliothek doctest

  • Inline-Tests
  • Einfach zu nutzen
  • Dokumentation als Tests
  • Unterstützt Regressionstests
Fallstudie: Software in Python entwickeln

Beispiel

def area(l, w):
    """
    Finds the area given length and width and returns the result
    >>> area(1, 1)
    1
    """
    return l + w

import doctest
doctest.testmod()
Fallstudie: Software in Python entwickeln

Beispiel

Failed example:
    area(1,1)
Expected:
    1
Got:
    2
Fallstudie: Software in Python entwickeln

Beispiel

def area(l, w):
    """
    Finds the area given length and width and returns the result
    >>> area(1, 1)
    1
    """
    return l * w

import doctest
doctest.testmod()

Alles OK = keine Fehlermeldungen, keine Ausgabe

Fallstudie: Software in Python entwickeln

Lass uns üben!

Fallstudie: Software in Python entwickeln

Preparing Video For Download...