ݺߣ

ݺߣShare a Scribd company logo
Codice di qualità con Visual Studio 2010Test Driven Development, Continuous Integration, MTMDavide VernoleIn collaborazione con
07/05/2010www.xedotnet.org2Introduzione al testingTest Driven DevelopmentContinuous IntegrationManual Testing
07/05/2010www.xedotnet.org3Introduzione al testingCosto del fallimentoScalataPreparazioneFormazioneFase di preparazione
07/05/2010www.xedotnet.org4Introduzione al testingCosto dei bugsReleaseTestDevelopmentFase del software
07/05/2010www.xedotnet.org5Introduzione al testing - segmentazione70% del testing avviene quila maggior parte dei tools operano quiBlack Box TestingWhite Box TestingAPI Testing
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)
07/05/2010www.xedotnet.org7Il processoScrivere il testFallire il testScrivere il codicePassare il testRe-factoringTest Driven Development (TDD)
07/05/2010www.xedotnet.org8TDD in Visual Studio 2010Generazione di codice da TestImpostazioni IntellisenseTest Impact ViewTest Driven Development (TDD)
07/05/2010www.xedotnet.org9TDD in VS 2010 - Generato dall’uso...Stub generati per:ClassStructInterfaceConstructorMethodPropertyFieldEnumIntellisense in modalità Consume-FirstTest Driven Development (TDD)
07/05/2010www.xedotnet.org10Test Driven Development (TDD)Demo TDD
07/05/2010www.xedotnet.org11Test Impact ViewTrovare il codice interessato dai cambiamentiViste possibiliTest impattatiCambiamenti di codiceVisual Studio 2010UltimatePremiumProfessionalTest Driven Development (TDD)
07/05/2010www.xedotnet.org12Test Driven Development (TDD)Demo TIV
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)
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)
07/05/2010www.xedotnet.org15Test Driven Development (TDD)Demo CI
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)
07/05/2010www.xedotnet.org17Cosa succede abitualmente quando un cliente (tester) trova un bug?Manual Testing  con Microsoft Test Manager (MTM)Funziona nel mio computer...ora mi dira la solita frase...
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)
07/05/2010www.xedotnet.org19Test Driven Development (TDD)Demo MTM
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...
Link07/05/2010www.xedotnet.org21Davide Vernoleblog.knodev.comdavide@knodev.comwww.knodev.comtwitter.com/knodev

More Related Content

Codice di qualità con VS2010 (TDD)