6. 07/05/2010www.xedotnet.org6Tecnica di sviluppo: test-first approachScrivere prima i testBasare le interazioni su un grouppo di testScrivere codice per passare i testBeneficiMantenere il focus sulle funzionalità di codice per l’utentePiccole interazioniPiena copertura del codice (Code Coverage)Codice più ridotto e pulitoTest Driven Development (TDD)
9. 07/05/2010www.xedotnet.org9TDD in VS 2010 - Generato dall’uso...Stub generati per:ClassStructInterfaceConstructorMethodPropertyFieldEnumIntellisense in modalità Consume-FirstTest Driven Development (TDD)
11. 07/05/2010www.xedotnet.org11Test Impact ViewTrovare il codice interessato dai cambiamentiViste possibiliTest impattatiCambiamenti di codiceVisual Studio 2010UltimatePremiumProfessionalTest Driven Development (TDD)
13. 07/05/2010www.xedotnet.org13VantaggiRiduce le sessioni di debuggingMantiene il focus suUsabilità attesa dal clienteTask da realizzareRiduce il tempo complessivo di sviluppo + testPorta a codice più modulare, flessibile e estendibileFull code coverageTest Driven Development (TDD)
14. 07/05/2010www.xedotnet.org14ScopoRidurre la possibilità di «Integration hell»Ridurre il tempo di fixing del codiceModalitàBuild a ogni inserimento di codice nel repositoryComeSource ControlBuild automatizzateFlag Continuous IntegrationFlag Gated CheckinContinuous Integration (CI)
16. 07/05/2010www.xedotnet.org16VantaggiIn presenza di bug, fixing on time senzaeccessivi tempi di debuggingIndividuazione e fix deiproblemi continuo evitandoilcaosdell’ultimominutoAvvisopreventivo per codice non funzionante o incompatibileConflittineicambiamentiUnit testing immediato per tutti I cambiamentiDisponibilitàcostantedell’ultima build perTestingDemoreleasefeedback immediatoaglisviluppatori perQualitàFunzionalitàImpatto del codicesullasoluzioneMigliora la modularità del codice e ne riduce la complessità (check-in frequenti)Continuous Integration (CI)
18. 07/05/2010www.xedotnet.org1870% dei test viene eseguito manualmenteVisual Studio 2010 introduceMTMMTM agevola la:creazione di test manualisegnalazione di bug ricchi di informazioniUtilizzabile anche da non developerElevata integrazione con TFSUser StoryTest caseBugs...eccManual Testing con Microsoft Test Manager (MTM)
20. 07/05/2010www.xedotnet.org20TecnicheUnit TestingToolsPEXAnalisi del codice e identificazione comportamentiAutomatizza la creazione di Unit Testing con elevato code coveragehttp://research.microsoft.com/en-us/projects/pex/MOLESAggevola lo Unit Testing con PEXContinua...