Test

Caso di studio: sviluppare software in Python

Mark Pedigo

Principal Data Scientist

Roadmap

Roadmap che mostra le parti del progetto completate e quelle in arrivo.

Caso di studio: sviluppare software in Python

Perché i test automatici?

  • Test automatici guidati dal software
  • Nessun intervento umano richiesto
  • Da controlli semplici a verifiche complete

Un robot che testa il codice

Caso di studio: sviluppare software in Python

Vantaggi dei test automatici

  • Qualità del codice migliorata
  • Riduzione del rischio
  • Migliore esperienza utente
Caso di studio: sviluppare software in Python

Cosa fanno i test unitari?

  • Test dei singoli componenti o funzioni, uno alla volta
  • Focus sulle parti più piccole dell'applicazione
  • Verifica l'output atteso dato l'input

Una lente d'ingrandimento che esamina blocchi

Caso di studio: sviluppare software in Python

Cos'è la libreria pytest?

  • Framework di test popolare per Python
  • Supporta i test unitari
  • Nota per semplicità, flessibilità e funzionalità
Caso di studio: sviluppare software in Python

Vantaggi di pytest

  • Semplice e leggibile
  • Fixture potenti
  • Si integra con altri strumenti
Caso di studio: sviluppare software in Python

Unit test - esempio

# 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

Esegui in console:

pytest test_math.py

===== test session starts ===== collected 1 item test_math_functions.py . [100%] ====== 1 passed in 0.03s ======
Caso di studio: sviluppare software in Python

Ayo berlatih!

Caso di studio: sviluppare software in Python

Preparing Video For Download...