Overzicht van geautomatiseerd testen

Casestudy: Software bouwen in Python

Mark Pedigo

Principal Data Scientist

Routekaart

Routekaart met welke delen van het project klaar zijn en welke we starten.

Casestudy: Software bouwen in Python

Geautomatiseerd testen in de ontwikkelworkflow

  • Correcte, voorspelbare resultaten
  • Vooraf gedefinieerde testcases
  • Automatische uitvoering

Een computer met op het scherm de tekst "automated testing", omringd door bugs en tandwielen, die geautomatiseerd testen weergeeft.

Casestudy: Software bouwen in Python

De doctest-bibliotheek

  • Geautomatiseerd testen: doctest, pytest
  • Gebruik docstrings om code te beschrijven
  • doctest: valideer voorbeelden in docstrings
Casestudy: Software bouwen in Python

Functies van de doctest-bibliotheek

  • Inline testen
  • Eenvoudig te gebruiken
  • Documentatie als tests
  • Ondersteunt regressietests
Casestudy: Software bouwen in Python

Voorbeeldgebruik

def area(l, w):
    """
    Berekent de oppervlakte op basis van lengte en breedte en geeft het resultaat terug
    >>> area(1, 1)
    1
    """
    return l + w

import doctest
doctest.testmod()
Casestudy: Software bouwen in Python

Voorbeeldgebruik

Mislukt voorbeeld:
    area(1,1)
Verwacht:
    1
Gekregen:
    2
Casestudy: Software bouwen in Python

Voorbeeldgebruik

def area(l, w):
    """
    Berekent de oppervlakte op basis van lengte en breedte en geeft het resultaat terug
    >>> area(1, 1)
    1
    """
    return l * w

import doctest
doctest.testmod()

Alles oké = geen foutmeldingen, geen output

Casestudy: Software bouwen in Python

Laten we oefenen!

Casestudy: Software bouwen in Python

Preparing Video For Download...