Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Codice di qualità con Visual Studio 2010<br />Test Driven Development, Continuous Integration, MTM<br />Davide Vernole<br ...
07/05/2010<br />www.xedotnet.org<br />2<br />Introduzione al testing<br />Test Driven Development<br />Continuous Integrat...
07/05/2010<br />www.xedotnet.org<br />3<br />Introduzione al testing<br />Costo del fallimento<br />Scalata<br />Preparazi...
07/05/2010<br />www.xedotnet.org<br />4<br />Introduzione al testing<br />Costo dei bugs<br />Release<br />Test<br />Devel...
07/05/2010<br />www.xedotnet.org<br />5<br />Introduzione al testing - segmentazione<br />70% del testing <br />avviene qu...
07/05/2010<br />www.xedotnet.org<br />6<br />Tecnica di sviluppo: test-first approach<br />Scrivere prima i test<br />Basa...
07/05/2010<br />www.xedotnet.org<br />7<br />Il processo<br />Scrivere il test<br />Fallire il test<br />Scrivere il codic...
07/05/2010<br />www.xedotnet.org<br />8<br />TDD in Visual Studio 2010<br />Generazione di codice da Test<br />Impostazion...
07/05/2010<br />www.xedotnet.org<br />9<br />TDD in VS 2010 - Generato dall’uso...<br />Stub generati per:<br />Class<br /...
07/05/2010<br />www.xedotnet.org<br />10<br />Test Driven Development (TDD)<br />Demo TDD<br />
07/05/2010<br />www.xedotnet.org<br />11<br />Test Impact View<br />Trovare il codice interessato dai cambiamenti<br />Vis...
07/05/2010<br />www.xedotnet.org<br />12<br />Test Driven Development (TDD)<br />Demo TIV<br />
07/05/2010<br />www.xedotnet.org<br />13<br />Vantaggi<br />Riduce le sessioni di debugging<br />Mantiene il focus su<br /...
07/05/2010<br />www.xedotnet.org<br />14<br />Scopo<br />Ridurre la possibilità di «Integration hell»<br />Ridurre il temp...
07/05/2010<br />www.xedotnet.org<br />15<br />Test Driven Development (TDD)<br />Demo CI<br />
07/05/2010<br />www.xedotnet.org<br />16<br />Vantaggi<br />In presenza di bug, fixing on time senzaeccessivi tempi di deb...
07/05/2010<br />www.xedotnet.org<br />17<br />Cosa succede abitualmente quando un cliente (tester) trova un bug?<br />Manu...
07/05/2010<br />www.xedotnet.org<br />18<br />70% dei test viene eseguito manualmente<br />Visual Studio 2010 introduceMTM...
07/05/2010<br />www.xedotnet.org<br />19<br />Test Driven Development (TDD)<br />Demo MTM<br />
07/05/2010<br />www.xedotnet.org<br />20<br />Tecniche<br />Unit Testing<br />Tools<br />PEX<br />Analisi del codice e ide...
Link<br />07/05/2010<br />www.xedotnet.org<br />21<br />Davide Vernole<br />blog.knodev.com<br />davide@knodev.com<br />ww...
Upcoming SlideShare
Loading in …5
×

Codice di qualità con VS2010 (TDD)

886 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Codice di qualità con VS2010 (TDD)

  1. 1. Codice di qualità con Visual Studio 2010<br />Test Driven Development, Continuous Integration, MTM<br />Davide Vernole<br />In collaborazione con<br />
  2. 2. 07/05/2010<br />www.xedotnet.org<br />2<br />Introduzione al testing<br />Test Driven Development<br />Continuous Integration<br />Manual Testing<br />
  3. 3. 07/05/2010<br />www.xedotnet.org<br />3<br />Introduzione al testing<br />Costo del fallimento<br />Scalata<br />Preparazione<br />Formazione<br />Fase di preparazione<br />
  4. 4. 07/05/2010<br />www.xedotnet.org<br />4<br />Introduzione al testing<br />Costo dei bugs<br />Release<br />Test<br />Development<br />Fase del software<br />
  5. 5. 07/05/2010<br />www.xedotnet.org<br />5<br />Introduzione al testing - segmentazione<br />70% del testing <br />avviene qui<br />la maggior parte <br />dei tools operano qui<br />Black Box Testing<br />White Box Testing<br />API Testing<br />
  6. 6. 07/05/2010<br />www.xedotnet.org<br />6<br />Tecnica di sviluppo: test-first approach<br />Scrivere prima i test<br />Basare le interazioni su un grouppo di test<br />Scrivere codice per passare i test<br />Benefici<br />Mantenere il focus sulle funzionalità di codice per l’utente<br />Piccole interazioni<br />Piena copertura del codice (Code Coverage)<br />Codice più ridotto e pulito<br />Test Driven Development (TDD)<br />
  7. 7. 07/05/2010<br />www.xedotnet.org<br />7<br />Il processo<br />Scrivere il test<br />Fallire il test<br />Scrivere il codice<br />Passare il test<br />Re-factoring<br />Test Driven Development (TDD)<br />
  8. 8. 07/05/2010<br />www.xedotnet.org<br />8<br />TDD in Visual Studio 2010<br />Generazione di codice da Test<br />Impostazioni Intellisense<br />Test Impact View<br />Test Driven Development (TDD)<br />
  9. 9. 07/05/2010<br />www.xedotnet.org<br />9<br />TDD in VS 2010 - Generato dall’uso...<br />Stub generati per:<br />Class<br />Struct<br />Interface<br />Constructor<br />Method<br />Property<br />Field<br />Enum<br />Intellisense in modalità Consume-First<br />Test Driven Development (TDD)<br />
  10. 10. 07/05/2010<br />www.xedotnet.org<br />10<br />Test Driven Development (TDD)<br />Demo TDD<br />
  11. 11. 07/05/2010<br />www.xedotnet.org<br />11<br />Test Impact View<br />Trovare il codice interessato dai cambiamenti<br />Viste possibili<br />Test impattati<br />Cambiamenti di codice<br />Visual Studio 2010<br />Ultimate<br />Premium<br />Professional<br />Test Driven Development (TDD)<br />
  12. 12. 07/05/2010<br />www.xedotnet.org<br />12<br />Test Driven Development (TDD)<br />Demo TIV<br />
  13. 13. 07/05/2010<br />www.xedotnet.org<br />13<br />Vantaggi<br />Riduce le sessioni di debugging<br />Mantiene il focus su<br />Usabilità attesa dal cliente<br />Task da realizzare<br />Riduce il tempo complessivo di sviluppo + test<br />Porta a codice più modulare, flessibile e estendibile<br />Full code coverage<br />Test Driven Development (TDD)<br />
  14. 14. 07/05/2010<br />www.xedotnet.org<br />14<br />Scopo<br />Ridurre la possibilità di «Integration hell»<br />Ridurre il tempo di fixing del codice<br />Modalità<br />Build a ogni inserimento di codice nel repository<br />Come<br />Source Control<br />Build automatizzate<br />Flag Continuous Integration<br />Flag Gated Checkin<br />Continuous Integration (CI)<br />
  15. 15. 07/05/2010<br />www.xedotnet.org<br />15<br />Test Driven Development (TDD)<br />Demo CI<br />
  16. 16. 07/05/2010<br />www.xedotnet.org<br />16<br />Vantaggi<br />In presenza di bug, fixing on time senzaeccessivi tempi di debugging<br />Individuazione e fix deiproblemi continuo evitandoilcaosdell’ultimominuto<br />Avvisopreventivo per <br />codice non funzionante o incompatibile<br />Conflittineicambiamenti<br />Unit testing immediato per tutti I cambiamenti<br />Disponibilitàcostantedell’ultima build per<br />Testing<br />Demo<br />release<br />feedback immediatoaglisviluppatori per<br />Qualità<br />Funzionalità<br />Impatto del codicesullasoluzione<br />Migliora la modularità del codice e ne riduce la complessità (check-in frequenti)<br />Continuous Integration (CI)<br />
  17. 17. 07/05/2010<br />www.xedotnet.org<br />17<br />Cosa succede abitualmente quando un cliente (tester) trova un bug?<br />Manual Testing con Microsoft Test Manager (MTM)<br />Funziona nel mio computer<br />...ora mi dira la solita frase...<br />
  18. 18. 07/05/2010<br />www.xedotnet.org<br />18<br />70% dei test viene eseguito manualmente<br />Visual Studio 2010 introduceMTM<br />MTM agevola la:<br />creazione di test manuali<br />segnalazione di bug ricchi di informazioni<br />Utilizzabile anche da non developer<br />Elevata integrazione con TFS<br />User Story<br />Test case<br />Bugs<br />...ecc<br />Manual Testing con Microsoft Test Manager (MTM)<br />
  19. 19. 07/05/2010<br />www.xedotnet.org<br />19<br />Test Driven Development (TDD)<br />Demo MTM<br />
  20. 20. 07/05/2010<br />www.xedotnet.org<br />20<br />Tecniche<br />Unit Testing<br />Tools<br />PEX<br />Analisi del codice e identificazione comportamenti<br />Automatizza la creazione di Unit Testing con elevato code coverage<br />http://research.microsoft.com/en-us/projects/pex/<br />MOLES<br />Aggevola lo Unit Testing con PEX<br />Continua...<br />
  21. 21. Link<br />07/05/2010<br />www.xedotnet.org<br />21<br />Davide Vernole<br />blog.knodev.com<br />davide@knodev.com<br />www.knodev.com<br />twitter.com/knodev<br />

×