Testen

Casestudy: Software bouwen in Python

Mark Pedigo

Principal Data Scientist

Routekaart

Roadmap die toont welke delen van het project klaar zijn en welke we starten.

Casestudy: Software bouwen in Python

Waarom geautomatiseerd testen?

  • Automatisch, softwaregestuurd testen
  • Geen menselijke tussenkomst nodig
  • Van simpele checks tot uitgebreide evaluaties

Een robot die code test

Casestudy: Software bouwen in Python

Voordelen van geautomatiseerd testen

  • Betere codekwaliteit
  • Risicobeperking
  • Betere gebruikerservaring
Casestudy: Software bouwen in Python

Wat doen unittests?

  • Onderdelen of functies los testen
  • Focus op de kleinste delen van een app
  • Controleer verwachte output bij input

Een vergrootglas dat blokken onderzoekt

Casestudy: Software bouwen in Python

Wat is de pytest-bibliotheek?

  • Populair testframework voor Python
  • Ondersteunt unittests
  • Bekend om eenvoud, flexibiliteit en features
Casestudy: Software bouwen in Python

Voordelen van pytest

  • Eenvoud en leesbaarheid
  • Krachtige fixtures
  • Integreert met andere tools
Casestudy: Software bouwen in Python

Unittest - voorbeeld

# 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

Voer uit in de console:

pytest test_math.py

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

Laten we oefenen!

Casestudy: Software bouwen in Python

Preparing Video For Download...