Testing e Metodologie Agili

Gli approcci Agile allo sviluppo del software stanno prendendo sempre più piede, in buona parte grazie alla loro particolare attenzione per la qualità del software prodotto e per la capacità di identificare rapidamente eventuali difetti nel codice. Questo risultato si ottiene grazie all'utilizzo coordinato e sinergico di una serie di pratiche e dei relativi strumenti che le supportano.
Per chi vuole avvicinarsi a questo modo di realizzare il proprio codice, illustriamo in questo tutorial le problematiche di testing di applicazioni seguendo la metodologia Agile, sia dal punto di vista metodologico che pratico. Analizziamo, tra le altre, le pratiche di Unit Testing, Test Driven Development (TDD), Behavior Driven Development (BDD) e Continuous Integration.
Il tutto accompagnato da esempi concreti, al fine di vedere applicato quanto appreso con due strumenti, uno Open Source e l'altro specifico di un Vendor (ma utilizzabile da ambienti di sviluppo eterogenei).

L'esposizione è intercalata da casi di vita vissuta nelle aziende, per evidenziare le problematiche reali e le pratiche per risolverle.
Pratiche e strumenti presentate:

  • Stesura di User Stories, Features, Tasks, Acceptance Test
  • Unit Testing
  • Test Driven Development (TDD)
  • Behavior Driven Development (BDD)
  • Continuous Integration

Prodotti e tecnologie utilizzati:

  • Team Foundation Server (Microsoft)
  • Workbench
  • Cruise Control (Open Source)
  • Cucumber

Biografie