SlideShare a Scribd company logo
1 of 18
Visual Studio Team System 2008Testing Unitario
.2 VS TS 2008 – Unit Testing Agenda Unit Testing Visual Studio Team System 2008 Demo
UnitTesting ¿Porquéutilizar UnitTesting? Brinda estado real de la aplicación Ayudan a detectar bugs tempranamente Más código hecho bien, menos ciclos de testing Contribuye a la calidad del código Código probado Código que se ejecuta realmente  Trazabilidad de requerimientos Anticipa problemas  Integración, deployment Es documentación REAL y ACTUALIZADA En definitiva, Time ToMarket, Calidad, Flexibilidad .3
UnitTesting .4 Cuantomáscercano el Release,  máscostosoes el bug. $1,000+ $100 $10 $1 Costo / $ EspecificaciónDiseñoCodificación          Testing       Release Momento en que se detecta el bug
Unit Testing .5 Alpha testing  Beta testing Usability testing Stress testing Procedimiento utilizado para validar unidades de código individuales. Provee un contrato escrito que una pieza de código debe satisfacer.  Unidad de código: método. Cada caso de test debe ser independiente de los otros. Son realizados por el desarrollador, no por testers o usuarios finales. Recovery testing Install/uninstall testing  Black box testing Functional testing White box testing Load testing Compatibility testing Unit testing System testing Performance testing  Comparison  testing Incremental integration testing Security testing End-to-end testing Integration testing Acceptance testing Sanity testing Manual testing Web testing Regression testing
UnitTesting Cambio cultural Setear correctamente expectativas Definir Herramientas Sólo se aprende con la experiencia Es un camino de ida! .6 ¿Cómoadoptarlo?
Visual Studio Team System 2008
Visual Studio TeamSystem 2008 ¿Qué provee Visual Studio TeamSystem 2008? Múltiples roles Múltiplesvistas: Test View – Creación Test List - Management Test Explorer – Ejecución Test Results – Evidencia Code Coverage Results – Efectividad de laspruebas Soportepara Command line y Automated Build Server Integradodentro del contexto de proyecto Work item tracking Source code control Reporting system Framework de testing .8
Visual Studio TeamSystem 2008 .9 Tipos de  tests
.10 Visual Studio TeamSystem 2008 Templates & Items Unit Test Load Test Web Test Manual Test Ordered Test Generic Test
Visual Studio TeamSystem 2008 Herramientas de desarrollo Visual Studio Team System 2008 Development Edition Framework de Tests  Soporte de Code coverage Se puedenobtenerdatos de pruebadesde un datasource Se puedenpublicar los resultados a TFS Ejecución contextual Se mejoró la performance  Ya en la versión de Professional de Visual Studio se cuenta con herramientas .11
.12 Visual Studio TeamSystem 2008 Tests Management ,[object Object],Filtrado, search ,[object Object],Categorización de tests Ejecución de tests Local y Remoto a través de un agente A través del IDE Línea de comandos Tarea de MS Build
.13 Visual Studio TeamSystem 2008 Testing Framework ,[object Object]
Asserts
Assert.AreEqualAssert.AreNotEqualAssert.AreNotSameAssert.AreSameAssert.EqualsAssert.FailAssert.InconclusiveAssert.IsFalseAssert.IsInstanceOfTypeAssert.IsNotInstanceOfTypeAssert.IsNotNullAssert.IsNullAssert.IsTrue
Accesors a miembros privados
Decoradores:Initialize, CleanUp, Ignore, Owner, etc.
.14 Demo

More Related Content

What's hot

Automatización de pruebas funcionales
Automatización de pruebas funcionalesAutomatización de pruebas funcionales
Automatización de pruebas funcionalesVicenç García-Altés
 
Estrategias de prueba del software
Estrategias de prueba del softwareEstrategias de prueba del software
Estrategias de prueba del softwareChava Romero Aguilar
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de softwareGuillermo Lemus
 
TechNoa 2007 - Visual Studio Team Systems
TechNoa 2007 - Visual Studio Team SystemsTechNoa 2007 - Visual Studio Team Systems
TechNoa 2007 - Visual Studio Team Systemsfmmeson
 
Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010
Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010
Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010Globe Testing
 
Enfoque estrategico para la prueba de software
Enfoque estrategico para la prueba de softwareEnfoque estrategico para la prueba de software
Enfoque estrategico para la prueba de softwareJorge Bustillos
 
Proyecto de sistemas de información luis castellanos (prueba)
Proyecto de sistemas de información   luis castellanos (prueba)Proyecto de sistemas de información   luis castellanos (prueba)
Proyecto de sistemas de información luis castellanos (prueba)Luis R Castellanos
 
Pruebas de software
Pruebas de softwarePruebas de software
Pruebas de softwareGomez Gomez
 
Roadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis Soria
Roadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis SoriaRoadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis Soria
Roadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis SoriaJose Luis Soria
 
Tipos de prueba de software
Tipos de prueba de softwareTipos de prueba de software
Tipos de prueba de softwareTensor
 
Taller casos de prueba
Taller casos de pruebaTaller casos de prueba
Taller casos de pruebaAndrés Grosso
 
Capitulo 17 estrategias_de_prueba_de_software
Capitulo 17 estrategias_de_prueba_de_softwareCapitulo 17 estrategias_de_prueba_de_software
Capitulo 17 estrategias_de_prueba_de_softwareAndres Valencia
 
Microsoft Test Manager 2010
Microsoft Test Manager 2010Microsoft Test Manager 2010
Microsoft Test Manager 2010Oliver Centeno
 

What's hot (20)

Las mejores herramientas para realizar pruebas de software
Las mejores herramientas para realizar pruebas de softwareLas mejores herramientas para realizar pruebas de software
Las mejores herramientas para realizar pruebas de software
 
Automatización de pruebas funcionales
Automatización de pruebas funcionalesAutomatización de pruebas funcionales
Automatización de pruebas funcionales
 
Introduction to unit testing
Introduction to unit testingIntroduction to unit testing
Introduction to unit testing
 
Estrategias de prueba del software
Estrategias de prueba del softwareEstrategias de prueba del software
Estrategias de prueba del software
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de software
 
TechNoa 2007 - Visual Studio Team Systems
TechNoa 2007 - Visual Studio Team SystemsTechNoa 2007 - Visual Studio Team Systems
TechNoa 2007 - Visual Studio Team Systems
 
Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010
Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010
Testing en equipos ágiles con Microsoft Test Manager y Lab Manager 2010
 
Enfoque estrategico para la prueba de software
Enfoque estrategico para la prueba de softwareEnfoque estrategico para la prueba de software
Enfoque estrategico para la prueba de software
 
tipos de prueba
tipos de pruebatipos de prueba
tipos de prueba
 
Pruebas funcionales
Pruebas funcionalesPruebas funcionales
Pruebas funcionales
 
Proyecto de sistemas de información luis castellanos (prueba)
Proyecto de sistemas de información   luis castellanos (prueba)Proyecto de sistemas de información   luis castellanos (prueba)
Proyecto de sistemas de información luis castellanos (prueba)
 
Pruebas de software
Pruebas de softwarePruebas de software
Pruebas de software
 
Roadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis Soria
Roadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis SoriaRoadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis Soria
Roadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis Soria
 
Calidad del software cap3
Calidad del software   cap3Calidad del software   cap3
Calidad del software cap3
 
Tipos de prueba de software
Tipos de prueba de softwareTipos de prueba de software
Tipos de prueba de software
 
Taller casos de prueba
Taller casos de pruebaTaller casos de prueba
Taller casos de prueba
 
Capitulo 17 estrategias_de_prueba_de_software
Capitulo 17 estrategias_de_prueba_de_softwareCapitulo 17 estrategias_de_prueba_de_software
Capitulo 17 estrategias_de_prueba_de_software
 
Microsoft Test Manager 2010
Microsoft Test Manager 2010Microsoft Test Manager 2010
Microsoft Test Manager 2010
 
Pruebas del software
Pruebas del softwarePruebas del software
Pruebas del software
 
Pruebas de programacion
Pruebas de programacionPruebas de programacion
Pruebas de programacion
 

Similar to Testing Con Visual Studio Team System 2008

12 MicroSoft SFIC 2009
12 MicroSoft SFIC 200912 MicroSoft SFIC 2009
12 MicroSoft SFIC 2009Pepe
 
tipos de pruebas.
tipos de pruebas.tipos de pruebas.
tipos de pruebas.Juan Ravi
 
pruebasunitarias-110921232512-phpapp02.pptx
pruebasunitarias-110921232512-phpapp02.pptxpruebasunitarias-110921232512-phpapp02.pptx
pruebasunitarias-110921232512-phpapp02.pptxCompusoftnetCiaLtda
 
Novedades De Visual Studio 2010
Novedades De Visual Studio 2010Novedades De Visual Studio 2010
Novedades De Visual Studio 2010Foquita05
 
¿Cómo poner software de calidad en manos del usuario de forma rápida?
¿Cómo poner software de calidad en manos del usuario de forma rápida?¿Cómo poner software de calidad en manos del usuario de forma rápida?
¿Cómo poner software de calidad en manos del usuario de forma rápida?Micael Gallego
 
Pruebas software (1)
Pruebas  software (1)Pruebas  software (1)
Pruebas software (1)René Pari
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurancewill2294
 
Pruebas de softwares
Pruebas de softwaresPruebas de softwares
Pruebas de softwaresSandy Ortega
 
Cypress en un mundo lleno de Selenium
Cypress en un mundo lleno de SeleniumCypress en un mundo lleno de Selenium
Cypress en un mundo lleno de SeleniumSoftware Guru
 
ALMSaimada Testing Funcional
ALMSaimada Testing FuncionalALMSaimada Testing Funcional
ALMSaimada Testing FuncionalGlobe Testing
 
Herramientas y entornos de implementacion de software
Herramientas y entornos de implementacion de softwareHerramientas y entornos de implementacion de software
Herramientas y entornos de implementacion de softwareMiguel Sanchez
 

Similar to Testing Con Visual Studio Team System 2008 (20)

12 MicroSoft SFIC 2009
12 MicroSoft SFIC 200912 MicroSoft SFIC 2009
12 MicroSoft SFIC 2009
 
tipos de pruebas.
tipos de pruebas.tipos de pruebas.
tipos de pruebas.
 
pruebasunitarias-110921232512-phpapp02.pptx
pruebasunitarias-110921232512-phpapp02.pptxpruebasunitarias-110921232512-phpapp02.pptx
pruebasunitarias-110921232512-phpapp02.pptx
 
Novedades De Visual Studio 2010
Novedades De Visual Studio 2010Novedades De Visual Studio 2010
Novedades De Visual Studio 2010
 
Prueba unitaria
Prueba unitariaPrueba unitaria
Prueba unitaria
 
¿Cómo poner software de calidad en manos del usuario de forma rápida?
¿Cómo poner software de calidad en manos del usuario de forma rápida?¿Cómo poner software de calidad en manos del usuario de forma rápida?
¿Cómo poner software de calidad en manos del usuario de forma rápida?
 
Pruebas software (1)
Pruebas  software (1)Pruebas  software (1)
Pruebas software (1)
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Pruebas de softwares
Pruebas de softwaresPruebas de softwares
Pruebas de softwares
 
software testing
software testingsoftware testing
software testing
 
Cypress en un mundo lleno de Selenium
Cypress en un mundo lleno de SeleniumCypress en un mundo lleno de Selenium
Cypress en un mundo lleno de Selenium
 
Integracion Continua
Integracion ContinuaIntegracion Continua
Integracion Continua
 
Presentación: xUnit y Junit
Presentación: xUnit y JunitPresentación: xUnit y Junit
Presentación: xUnit y Junit
 
Conociendo Nuestro Fua interno
Conociendo Nuestro Fua internoConociendo Nuestro Fua interno
Conociendo Nuestro Fua interno
 
Unidad ii. tdd
Unidad ii. tddUnidad ii. tdd
Unidad ii. tdd
 
Introduccion a Visual Studio
Introduccion a Visual StudioIntroduccion a Visual Studio
Introduccion a Visual Studio
 
Calidad de software y TDD
Calidad de software y TDDCalidad de software y TDD
Calidad de software y TDD
 
ALMSaimada Testing Funcional
ALMSaimada Testing FuncionalALMSaimada Testing Funcional
ALMSaimada Testing Funcional
 
Herramientas y entornos de implementacion de software
Herramientas y entornos de implementacion de softwareHerramientas y entornos de implementacion de software
Herramientas y entornos de implementacion de software
 
Prubea de software
Prubea de softwarePrubea de software
Prubea de software
 

More from Diego Ferreyra

Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03
Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03
Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03Diego Ferreyra
 
Code camp 2011 - Creando aplicaciones a la velocidad de la luz
Code camp 2011 - Creando aplicaciones a la velocidad de la luzCode camp 2011 - Creando aplicaciones a la velocidad de la luz
Code camp 2011 - Creando aplicaciones a la velocidad de la luzDiego Ferreyra
 
Scrum y kanban mas allas de software
Scrum y kanban mas allas de softwareScrum y kanban mas allas de software
Scrum y kanban mas allas de softwareDiego Ferreyra
 
Cessi Iso9001 Y Metodos Agiles
Cessi Iso9001 Y Metodos AgilesCessi Iso9001 Y Metodos Agiles
Cessi Iso9001 Y Metodos AgilesDiego Ferreyra
 
Run Reloaded 2009 Ba Office Development
Run Reloaded 2009 Ba   Office DevelopmentRun Reloaded 2009 Ba   Office Development
Run Reloaded 2009 Ba Office DevelopmentDiego Ferreyra
 
Agiles 2009 Equipos Dsitribuidos Desde Las Trincheras
Agiles 2009   Equipos Dsitribuidos Desde Las TrincherasAgiles 2009   Equipos Dsitribuidos Desde Las Trincheras
Agiles 2009 Equipos Dsitribuidos Desde Las TrincherasDiego Ferreyra
 
MAD 2009 - VSTS Desde Las Trincheras
MAD 2009 - VSTS Desde Las TrincherasMAD 2009 - VSTS Desde Las Trincheras
MAD 2009 - VSTS Desde Las TrincherasDiego Ferreyra
 
Code Camp 2009 - M Modelling Language
Code Camp 2009 - M Modelling LanguageCode Camp 2009 - M Modelling Language
Code Camp 2009 - M Modelling LanguageDiego Ferreyra
 

More from Diego Ferreyra (9)

Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03
Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03
Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03
 
Code camp 2011 - Creando aplicaciones a la velocidad de la luz
Code camp 2011 - Creando aplicaciones a la velocidad de la luzCode camp 2011 - Creando aplicaciones a la velocidad de la luz
Code camp 2011 - Creando aplicaciones a la velocidad de la luz
 
Scrum y kanban mas allas de software
Scrum y kanban mas allas de softwareScrum y kanban mas allas de software
Scrum y kanban mas allas de software
 
Cessi Iso9001 Y Metodos Agiles
Cessi Iso9001 Y Metodos AgilesCessi Iso9001 Y Metodos Agiles
Cessi Iso9001 Y Metodos Agiles
 
Run Reloaded 2009 Ba Office Development
Run Reloaded 2009 Ba   Office DevelopmentRun Reloaded 2009 Ba   Office Development
Run Reloaded 2009 Ba Office Development
 
Agiles 2009 Equipos Dsitribuidos Desde Las Trincheras
Agiles 2009   Equipos Dsitribuidos Desde Las TrincherasAgiles 2009   Equipos Dsitribuidos Desde Las Trincheras
Agiles 2009 Equipos Dsitribuidos Desde Las Trincheras
 
MAD 2009 - VSTS Desde Las Trincheras
MAD 2009 - VSTS Desde Las TrincherasMAD 2009 - VSTS Desde Las Trincheras
MAD 2009 - VSTS Desde Las Trincheras
 
Calidad De Codigo
Calidad De CodigoCalidad De Codigo
Calidad De Codigo
 
Code Camp 2009 - M Modelling Language
Code Camp 2009 - M Modelling LanguageCode Camp 2009 - M Modelling Language
Code Camp 2009 - M Modelling Language
 

Recently uploaded

Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Marketing BRANDING
 
David_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDavid_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDAVIDROBERTOGALLEGOS
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptxHugoGutierrez99
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerenciacubillannoly
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfKarinaCambero3
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdfBetianaJuarez1
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)JuanStevenTrujilloCh
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docxobandopaula444
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointValerioIvanDePazLoja
 
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxLINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxkimontey
 
Viguetas Pretensadas en concreto armado
Viguetas Pretensadas  en concreto armadoViguetas Pretensadas  en concreto armado
Viguetas Pretensadas en concreto armadob7fwtwtfxf
 
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docxPLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docxhasbleidit
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfFernandoOblitasVivan
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1ivanapaterninar
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar24roberto21
 

Recently uploaded (20)

Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
 
El camino a convertirse en Microsoft MVP
El camino a convertirse en Microsoft MVPEl camino a convertirse en Microsoft MVP
El camino a convertirse en Microsoft MVP
 
David_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDavid_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptx
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerencia
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdf
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power Point
 
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxLINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
 
Viguetas Pretensadas en concreto armado
Viguetas Pretensadas  en concreto armadoViguetas Pretensadas  en concreto armado
Viguetas Pretensadas en concreto armado
 
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docxPLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdf
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar
 

Testing Con Visual Studio Team System 2008

  • 1. Visual Studio Team System 2008Testing Unitario
  • 2. .2 VS TS 2008 – Unit Testing Agenda Unit Testing Visual Studio Team System 2008 Demo
  • 3. UnitTesting ¿Porquéutilizar UnitTesting? Brinda estado real de la aplicación Ayudan a detectar bugs tempranamente Más código hecho bien, menos ciclos de testing Contribuye a la calidad del código Código probado Código que se ejecuta realmente Trazabilidad de requerimientos Anticipa problemas Integración, deployment Es documentación REAL y ACTUALIZADA En definitiva, Time ToMarket, Calidad, Flexibilidad .3
  • 4. UnitTesting .4 Cuantomáscercano el Release, máscostosoes el bug. $1,000+ $100 $10 $1 Costo / $ EspecificaciónDiseñoCodificación Testing Release Momento en que se detecta el bug
  • 5. Unit Testing .5 Alpha testing Beta testing Usability testing Stress testing Procedimiento utilizado para validar unidades de código individuales. Provee un contrato escrito que una pieza de código debe satisfacer. Unidad de código: método. Cada caso de test debe ser independiente de los otros. Son realizados por el desarrollador, no por testers o usuarios finales. Recovery testing Install/uninstall testing Black box testing Functional testing White box testing Load testing Compatibility testing Unit testing System testing Performance testing Comparison testing Incremental integration testing Security testing End-to-end testing Integration testing Acceptance testing Sanity testing Manual testing Web testing Regression testing
  • 6. UnitTesting Cambio cultural Setear correctamente expectativas Definir Herramientas Sólo se aprende con la experiencia Es un camino de ida! .6 ¿Cómoadoptarlo?
  • 7. Visual Studio Team System 2008
  • 8. Visual Studio TeamSystem 2008 ¿Qué provee Visual Studio TeamSystem 2008? Múltiples roles Múltiplesvistas: Test View – Creación Test List - Management Test Explorer – Ejecución Test Results – Evidencia Code Coverage Results – Efectividad de laspruebas Soportepara Command line y Automated Build Server Integradodentro del contexto de proyecto Work item tracking Source code control Reporting system Framework de testing .8
  • 9. Visual Studio TeamSystem 2008 .9 Tipos de tests
  • 10. .10 Visual Studio TeamSystem 2008 Templates & Items Unit Test Load Test Web Test Manual Test Ordered Test Generic Test
  • 11. Visual Studio TeamSystem 2008 Herramientas de desarrollo Visual Studio Team System 2008 Development Edition Framework de Tests Soporte de Code coverage Se puedenobtenerdatos de pruebadesde un datasource Se puedenpublicar los resultados a TFS Ejecución contextual Se mejoró la performance Ya en la versión de Professional de Visual Studio se cuenta con herramientas .11
  • 12.
  • 13.
  • 19. VS TS 2008 – Unit Testing Conclusiones Contribuye a ahorrar costos de desarrollo Incrementa la calidad de la solución Provee visibilidad real del estado del proyecto Lleva tiempo, pero se puede implementar Visual Studio TeamSystem 2008 contribuye con herramientas Codificación Organización Automatización Varios escenarios .15
  • 20. VS TS 2008 – Unit Testing Microsoft® Visual Studio® Team System 2008 Team Foundation Server SP1 and Team Suite SP1 VPC Image (Trial) Site para bajar una VM con TF Server y Team Suite http://www.microsoft.com/downloads/details.aspx?FamilyID=c7a809d8-8c9f-439f-8147-948bc6957812&displaylang=en “Test Driven Development: By Example” de Kent Beck Excelente libro sobre cómo practicar TDD, con patrones de testing muy útiles http://www.amazon.com/Test-Driven-Development-Addison-Wesley-Signature/dp/0321146530/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1231387420&sr=8-1 .16 Recursos
  • 21. Espacio para Consultas .17 ¿ ¿Tiene dudas, consultas o sugerencias? Muchas Gracias por su atención. Diego F. Ferreyra Core Technologies Manager diego.ferreyra@huddle.com.ar Mauro E. Castagnasso Core Technologies Consultant mauro.castagnasso@huddle.com.ar
  • 22. Huddle Group S.A. Enterprise Technologies | Products & Services info@huddle.com.ar · www.huddle.com.ar Oficinas en Buenos Aires Pasaje Carabelas 344 · Piso 5 · C1009AAD · Ciudad de Buenos Aires · Argentina Tel.Fax.: (54.11)5032.1070 Oficinas en Bahía Blanca Donado 74 · Entrepiso 3 · B8000iYB · Bahía Blanca · Buenos Aires · Argentina Tel.Fax.: (54.0291)400.2767 HUDDLE GROUP S.A. IS A MICROSOFT GOLD CERTIFIED PARTNER

Editor's Notes

  1. Mi nombre es Diego Ferreyra y estoy a cargo del área de Core Technologies de HuddleGroup, equipo encargado de brindar servicios de consultoría especializados en tecnologías Microsoft. Mauro Castagnasso es un consultor del equipo y ambos hemos trabajado en varios proyectos utilizando TeamFoundationSystem, por lo que mucho de la charla está basado en historias que hemos recopilado desde las trincheras.  
  2. 189 = 1 minuto y medioElobjetivo de la charla es que podamos definir el porqué de la existencia del testing unitario, comprender sus ventajas y ver las herramientas que nos provee Visual Studio TeamSystem 2008 para poder llevar a cabo estas tareas. El formato de la charla nos gustaría que sea bastante interactivo. Con esto me refiero a que iremos planteando temas y nos gustaría realmente escuchar sus opiniones y experiencias para poder aprender nosotros también a partir de su experiencia.La agendaque proponemos consiste de 3 partes principales. En la primera sentaremos algunas bases con respecto a lo que es UnitTesting, luego presentaremos algunas características que provee Visual Studio TeamSystem 2008 para realizar testing unitario tanto de clases como de páginas web y luego haremos una pequeña demo de estas características para que quede en concreto cómo la herramienta contribuye a esto.La demo la haremos en una máquina virtual que puede descargarse gratuitamente del site de Microsoft, que viene con TeamFoundation Server y la versionTeam Suite de Visual Studio 2008. Al final de la charla daremos los links para quien esté interesado en este material.
  3. 101 = 1 minutoPara comenzar la charla, nos gustaría plantear una pregunta muy básica. ¿Porqué es bueno aplicar testing unitario?COMENTAR: Experiencia en proyectos acerca de cómo mejorar la calidad del códigoMuchos de estos temas nos ayudan en definitiva a tratar de detectar defectos tempranamente. Lo que es bueno considerar en este caso, es que esto nos provee ventajas adicionales en el ciclo de vida del proyecto, más allá de la tarea específica del desarrollo. Para explicar mejor esta idea, lo mejor es mostrar cómo la detección temprana de un bug afecta al costo del proyecto, considerando las consecuencias que esto trae.
  4. 169 = 68 segundosEn base a la experiencia que tenemos, es fácil ver porqué cuando más cerca de la entrega final se está, más nos cuesta un bug. Si lo detectamos tempranamente, cuando estamos recién diagramando la solución o tirando las primeras líneas de código, nos lleva algunos minutos corregirlo. Si un bug es detectado en la etapa de testing, esto implica que el equipo de testingdeba insumir tiempo para especificar correctamente el ticket. Luego el desarrollador invertirá tiempo para reproducirlo, detectar la causa y corregirlo. Esto puede empeorar si no es el mismo developer que codificó el componente o pasó mucho tiempo desde que se construyó. Avanzando en la etapa del proyecto, si el bug es detectado por el cliente, puede costar mucho más que eso, puede costar el proyecto. Y si es detectado en producción, bueno, todos sabemos las consecuencias que esto puede acarrear. Por lo tanto, si somos capaces de detectar la mayor cantidad de bugs en las primeras etapas, estaremos afectando directamente el costo de nuestro proyecto. 
  5. 301 = 2 minutosUna vez que vimos la utilidad de realizar testing unitario, nos gustaría diferenciar este tipo de testingdel resto de los tipos de pruebas que pueden realizarse. Por ejemplo, tests de performance que es llevado a cabo para analizar el comportamiento de la aplicación con determinada carga de trabajo. También existe el test de integración, que consiste en probar varios componentes del sistema, logrando de esta manera detectar los problemas que surgen al trabajar estos en conjunto. También están los tests de aceptación, que deben ser llevados a cabo por parte del usuario para certificar que la aplicación funciona según sus requerimientos.Por lo tanto, en esta charla pondremos el foco en el testing unitario de componentes. CLICKEste tipo de testing se centra en la prueba de partes pequeñas y bien acotadas de funcionalidad. Esto nos ayuda a aislar la problemática a lo que esa pieza en particular quiere resolver. Esto nos lleva a encontrarnos con varias consideraciones a la hora de realizar testing unitario. Por ejemplo, el caso más común es el acceso a la base de datos. Debemos considerar en esto si el objetivo de nuestro test en particular es probar que el componente acceda correctamente a la base de datos o la realización de una lógica en particular. Lo que se suele realizar, es generar una batería de tests para probar el ABM de las entidades del modelo de dominio y luego abstraer de esto al resto de los tests, considerando que esta funcionalidad está probada y es correcta. Para esto hay varios patrones conocidos, como por ejemplo Repository, y luego se generan MockObjectspara que sean utilizados en el resto de los tests que no es necesario acceder a la base de datos. Pero de este tema se hablará más en detalle en la siguiente charla.
  6. 309 = 2 minutosOtra de las preguntas clavesen esto, es cómo adoptar el testing unitario si no es algo ya que nuestros equipos están impulsando. PREGUNTAR: Cuantos ya están utilizando testing unitario fuertemente y no ocasionalmente?Llevar a que el testing unitario sea una cosa de todos los días no es algo que se aprende de un día para el otro. Implica un cambio cultural, ya que la mayoría de la gente ve la tarea de hacer los tests de su aplicación como una tarea tediosa que no agrega ningún valor. Nunca más errado. Ya hemos visto que esto redunda en beneficios al proyecto por lo que es algo necesario y que se paga solo. Por lo tanto, es importante mostrar a los miembros del equipo las ventajas que trae aparejadas este enfoque y cómo nos ayudará a brindar mejores soluciones a nuestros clientes. Esto es importante plantearlo a los equipos, para que puedan tener bien presente cuales son los objetivos de esto y qué se puede esperar de esta técnica.Por otro lado, es importante remarcar que a realizar testing unitario se aprende con la experiencia. A medida que se vayan realizando más tests, se irá aprendiendo mejores formas de realizarlo y la tarea llega realmente a convertirse en algo instintivo. Una vez que uno se acostumbra a aplicar testing unitario, le da miedo pensar en un desarrollo sin tests y no logra imaginarse cómo hizo en tantos años de desarrollo para estar seguro de que cuando se aplicaba un cambio no se afectaba otra parte del sistema.Una vez que está planteada la necesidad del cambio cultural y que no es algo que se aprende rápidamente, es importante considerar las herramientas que darán soporte al proceso. Para esto, Visual Studio TeamSystem 2008 brinda una serie de herramientas que contribuyen en todas las etapas de desarrollo de la aplicación.
  7. 212 = 2 minutosPara adentrarnos dentro de las herramientas que provee Visual Studio TeamSystem 2008 para realizar testing, nombraremos algunas características importantes dentro de este enfoque.En primer lugar se debe considerar que TeamSystem considera el testing desde diferentes roles. No solo los desarrolladores pueden realizarlo, sino también los testers y DBAs, cada uno con su correspondiente versión del producto.Luego, dentro de Visual Studio encontramos que tenemos varias vistas de los tests. Para crear los tests, administrar listas de tests a ejecutar, analizar su ejecución y los resultados de multiples corridas. Adicionalmente, esto alimenta métricas que indican el código cubierto durante la ejecución.Adicionalmente, es factible correr tests desde la línea de comandos o integrarlos con el build server.Por otro lado, considera la ejecución de los tests dentro del contexto de proyecto, pudiendo obtener reportes variados en cuanto al resultado de ejecución de los tests. Permite crear automáticamente workitemsal detectar tests fallidos, integrarlo con el control de código fuente por medio de políticas de checkin.Ya desde el punto de vista de desarrollo, lo más utilizado es el framework de testing que provee. Por medio de esto se pueden realizar los Asserts necesarios como así también decorar los métodos con atributos para la ejecución de los tests, inicializadores, etc.
  8. 119 = 1 minutoDependiendo de la versión de TeamSystemque se esté utilizando, hay diversos tipos de tests que pueden o no utilizarse. Los que nos centraremos ahora son los tests unitarios y los tests Web.Los otros tipos de tests son útiles para diversos escenarios. Por ejemplo los tests manuales, son para aquellos casos en que no se pudo automatizar un test de un determino escenario o userstory. Esto es muy común para pruebas funcionales de caja negra realizadas por el usuario final. En este caso, Visual Studio provee una herramienta para que queden detallados los pasos a ejecutar para llevar a cabo el tests y pregunta durante la ejecución sobre el resultado de la ejecución de tal paso.
  9. 194 = 1 minuto y medioDentro de los templates disponibles para la creación de tests, Visual Studio nos provee de los tipos mostrados en la imagen.Dentro de un proyecto de tipo Test, se pueden agregar diversos tipos de archivos de test. Los UnitTests son utilizados para testing unitario de componentes, permitiendo ejecutar código generalmente de backend.Los tests de tipo Load son tests que se encargan de ejecutar concurrentemente los tests automáticos especificados, para determinar cómo se comporta el sistema ante una determinada carga.Los testsWeb son los que permiten ejecutar tests en interfaces Web. Se puede grabar una macro con el recorrido del test, que luego será reproducida al momento de ejecutar el test. En esta macro se pueden parametrizar valores de los fields de los formularios, del header del post HTTP, obtener datos desde una fuente de datos y utilizar esto como valores de prueba, etc.Los testsmanuales son realizados en los casos en que no se puede automatizar un test y es necesario dejar certificado que tal funcionalidad ha sido probada.Los testsOrderedconsiste en una batería de tests que se ejecutan en el orden especificado. Está formado por varios tests.
  10. 145 = 1 minuto y medioYa centrándonos en las herramientas de desarrollo propiamente dichas, hay varias opciones muy útiles. Primero que nada el framework de testingque provee Visual Studio. Con este realizaremos las tareas más comunes y en conjunto con otras herramientas tales como MoQ o RhinoMocks u otros, contamos con lo necesario para crear los tests. Luego la obtención de métricas a partir de la ejecución de los tests. Esto es muy útil para detectar puntos de mejora o posibles fallas. Otra importante herramienta es la posibilidad de utilizar una fuente de datos para testing. Esto se logra por medio de atributos que indican el data source y luego accediendo al TestContext para obtener el valor correspondiente a cada ejecución del test.Dentro de las nuevas características de TeamSystem 2008, es bueno mencionar la ejecución contextual. Ahora se puede hacer click derecho y correr los tests!
  11. 110 = 1 minutoAdemás de los tipos de proyectos y herramientas varias para la ejecución de los tests, Visual Studio provee un framework de testing que simplifica las tareas a realizar. Si alguien trabajó con Nunit en algún momento, le resultará familiar.Provee una clase para realizar afirmaciones sobre pruebas realizadas (que se llama Assert). Adicionalmente se provee de un conjunto de decoradores de métodos útiles para indicar diversos pasos de ejecución del tests (Initializse, CleanUp, etc), como así también atributos adicionales tales como Owner que permite indicar la persona que hizo el test.Por otro lado, provee un mecanismo para crear clases que acceden a miembros privados de las clases a probar. Quizás no es lo más recomendable, pero está disponible 
  12. 25 minutosExplicar ejemplo (5 minutos)  Agregar proyecto de testing   Tests unitarios (5m) Framework Ejecución de tests (5m) Tools, métricas Web Tests (10m) 
  13. 171 = 1 minutoComo conclusiones finales nos gustaría repasar los objetivos que mencionábamos al principio de la charla.Hemos visto que el testing unitario realmente contribuye en los proyectos, brindándonos una imagen real del estado de la aplicación, guiándonos hacia la revisión y mejora del código realizado y sobre todo, apuntando a la reducción de costos totales del proyecto a realizar. Llegar a trabajar con esta filosofía no es algo que se pueda realizar de un día para el otro, pero se puede hacer y es cuestión de decidirlo y planificarlo.Por otro lado, hemos visto que Visual Studio provee una serie de herramientas que contribuyen en varias etapas del ciclo de vida de la aplicación, por lo que no es algo que incumbe al desarrollo únicamente. Esto es importante saberlo ya que quizás muchos ya poseemos esta herramienta y no se la ha aprovechado a fondo, o quizás se está en proceso de mejora de los procesos de desarrollo y de esta manera puede encontrarse en Visual Studio un aliado para lograr esto.