www.tecnosoftware.com.ar
Build
TFS para equipos de desarrollo
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Agenda
• Concept...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Repaso: Proceso ...
Build Y
Automatización de Build
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Team Build
Ejecu...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Team Build
Arqui...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Conceptos
Build ...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Integración Cont...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Nightly Build
• ...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Unit Testing
• P...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Unit Testing - V...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Unit Testing - D...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Unit Testing en ...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
using Nunit.Fram...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Code Coverage
• ...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Tipos de Code Co...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Build Automation...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
MSBuild
• Plataf...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Elementos (Items...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Propiedades
• Re...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Elementos vs Pro...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Tareas
• Las tar...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Destinos (Target...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Dependencia de T...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Condiciones
• MS...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Elemento Choose
...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Elemento Choose
...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Tarea Exec
• Eje...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Registrar librer...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Extension pack
•...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Ejecución de MSB...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Ejemplo
<Project...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Build Definition...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Crear Build Defi...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Listado de Builds
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Reportes
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Target de TFS
• ...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Sobre-escribir t...
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Propiedades en T...
Demo de Build Server con TFS
Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar
Resumen
• Build ...
Consultas
Av. Belgrano 687 Piso 7º - Buenos Aires, Argentina
Teléfono: (+5411) 5128-3000
www.tecnosoftware.com.ar
contacte@tecnosoft...
Próxima SlideShare
Cargando en…5
×

Capacitación TFS - Build

367 visualizaciones

Publicado el

Presentación sobre Build de una capacitación teórico-práctica de cuatro días sobre Microsoft TFS que di a desarrolladores, analistas funcionales, testers y PMs.
Presentation about Build of a both theoretical and practical training course of four days on Microsft TFS given to developers, functional analysts, testers and PMs.

Publicado en: Tecnología
0 comentarios
1 recomendación
Estadísticas
Notas
  • Sé el primero en comentar

Sin descargas
Visualizaciones
Visualizaciones totales
367
En SlideShare
0
De insertados
0
Número de insertados
2
Acciones
Compartido
0
Descargas
13
Comentarios
0
Recomendaciones
1
Insertados 0
No insertados

No hay notas en la diapositiva.

Capacitación TFS - Build

  1. 1. www.tecnosoftware.com.ar Build TFS para equipos de desarrollo
  2. 2. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Agenda • Conceptos − TFS Build (Build Automation) − MSBuild • Componentes • Configuraciones para otras tecnologías (VB) − MSBuild en TFS • Build Definitions • Demo de Build • Resumen
  3. 3. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Repaso: Proceso de Check-In 12V59 12 4 12 Changeset 12 WorkItem 158 Validar Políticas 1 Motor de Políticas de Checkin Pruebas WorkItems Personalizada AnálisisEstático Publicar Cambios 2 Evento de Checkin Actualizar Work Items 3 Envío de Mail 4 Link Workspace
  4. 4. Build Y Automatización de Build
  5. 5. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Team Build Ejecución de un build Obtener fuentes del TFS Generar Build Report y notificar Publicar el Build Output Actualizar Work Items Build (incluido el Code Analysis) Correr Tests y obtener Coverage
  6. 6. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Team Build Arquitectura Cliente Team Foundation Capa de Aplicación Servidor de Build Crear build type Iniciar build Ver Reportes Team Build Web Services MSBuild Recurso compartido Capa de Datos Código Work items Team Build data Team Foundation warehouse
  7. 7. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Conceptos Build es el conjunto de pasos necesarios para obtener un producto de software. No se limita a compilar! Build automation es el acto de automatizar este conjunto de pasos, generalmente relacionado con: • compilar codigo fuente • armado de paquetes o versiones • ejecucion de pruebas • despliegue en ambientes de testing y/o producción • generación de documentación El objetivo es lograr que estas tareas sean repetibles de manera consistente, y lo mejor, es que podamos delegarlo a una herramienta que lo haga por nosotros
  8. 8. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Integración Continua • Práctica de desarrollo de software donde los miembros de un equipo integran su trabajo frecuentemente, al menos una vez por día. • Cada integración es verificada por un build automatizado para detectar problemas de integración tan pronto como sea posible. • Permite al equipo de QA realizar verificaciones tempranas del producto sin depender de despliegues manuales.
  9. 9. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Nightly Build • Consiste en ejecutar el proceso completo de Build todas las noches con el objetivo de asegurar que el sistema se encuentra en estado consistente. • El resultado de un nightly-build debe ser un entegable concreto, capaz de ser deployado. • Ventajas: − Comenzar a trabajar todos los días sobre suelo firme. − Si ocurren problemas de integración, saber exactamente la causa para solucionarlo cuanto antes
  10. 10. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Unit Testing • Procedimiento usado para validar el correcto funcionamiento de un módulo de código (clase o componente) • Codificar casos de prueba para cada una de las funcionalidades y métodos − Se prueba cada parte por separado para verificar que cada parte funciona correctamente − Si un cambio provoca una regresión, ésta puede ser rápidamente identificada y corregida − Cada caso de prueba es independiente del resto (principalmente a nivel de datos) • Realizado por desarrolladores (no por usuarios)
  11. 11. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Unit Testing - Ventajas • Facilita el Cambio − Permite refactorizar el código garantizando que el módulo aún funciona correctamente • Simplifica la Integración − Pueden ser utilizados en un testing de tipo bottom-up (se verifican primero las partes y luego al suma de ellas) • Documentación − Proveen una especie de “documentación viva”. − Describen cómo se debe usar (y cómo no) el módulo de código y su API − Evolucionan a medida que evoluciona el código
  12. 12. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Unit Testing - Desventajas • Sólo se verifica la funcionalidad de las pruebas unitarias • No es posible capturar todos los errores − Errores de integración − Problemas de performance • No es simple anticipar todas las posibles combinaciones de entradas a la unidad que se está probando • No permite probar todas las capas fácilmente
  13. 13. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Unit Testing en TFS [TestClass] public class CuentasTest { [TestMethod] public void SaldoTest(){ Cuenta cta = new Cuenta(); cta.Depositar(1000); Assert.AreEqual(1000, cta.Saldo); } } Atributo que agrupa Tests Atributo que define un Test Evaluaciones de condiciones funcionales del test
  14. 14. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar using Nunit.Framework; [TestFixture] public class CuentasTest{ [Test] public void SaldoTest(){ Cuenta cta = new Cuenta(); cta.Depositar(1000); Assert.AreEqual(1000, cta.Saldo); } } Unit Test con NUnit Namespace de Nunit Atributo que agrupa Tests Atributo que define un Test Evaluaciones de condiciones funcionales del test
  15. 15. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Code Coverage • Es una actividad propia del testing Caja Blanca • Utilizada en conjunto con Unit Testing • Su resultado representa el porcentaje de alcance sobre el software objetivo de las pruebas unitarias − El cálculo se basa en el conjunto de líneas de código fuente que fueron alcanzadas por la ejecución de las pruebas unitarias
  16. 16. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Tipos de Code Coverage • Function coverage – Fueron ejecutadas todas las funciones del programa? • Statement coverage – Fue ejecutada cada línea del archivo fuente? • Condition coverage – Fueron ejecutadas todas las condiciones de evaluación y sus caminos alternativos?
  17. 17. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Build Automation • Utiliza como motor de compilación a MSBuild. • Trabaja sobre Team Projects. • Se configura mediante Build Definitions utilizando los Build Agents.
  18. 18. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar MSBuild • Plataforma de compilación • Configuraciones mediante archivo XML − *.sln y *.*proj • Contenido − Elementos − Propiedades − Tareas − Destinos • Extendido por la community agregando nuevas tareas que facilitan el tratamiento de otras plataformas. − http://msbuildextensionpack.codeplex.com/
  19. 19. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Elementos (Items) • Representan entradas en el sistema de generación. • Se agrupan en colecciones de elementos basadas en los nombres de colección definidos por el usuario. • Se hace referencia a las colecciones de elementos mediante la sintaxis @(NombreColeccion). • Ej: @(Archivos) <ItemGroup> <Archivos Include="pics/sunny.png;pics/rain.png" /> <Archivos Include="pics/**/*.png" /> </ItemGroup>
  20. 20. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Propiedades • Representan pares clave/valor que se pueden utilizar para configurar. • Se declaran creando un elemento con el nombre de la propiedad como elemento secundario de un elemento PropertyGroup. • Se hace referencia a las propiedades con la sintaxis $(PropertyName). • Ej: $(Foo) <PropertyGroup> <Foo>Bar</Foo> </PropertyGroup>
  21. 21. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Elementos vs Propiedades • Los elementos se almacenan en colecciones, mientras que las propiedades contienen un valor escalar único. • Los elementos no se pueden quitar de las colecciones de elementos, mientras que se puede modificar el valor de las propiedades una vez definido. • Los elementos pueden contener metadatos y utilizar la notación %(ItemMetadata), mientras que las propiedades no pueden.
  22. 22. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Tareas • Las tareas son unidades reutilizables de código ejecutable. • MSBuild se distribuye con un gran número de tareas comunes, como Copy, MakeDir y Error. • Listado de tareas: − http://msdn.microsoft.com/es-es/library/7z253716(v=vs.90).aspx • Ejemplo: <MakeDir Directories="$(BuildDir)" />
  23. 23. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Destinos (Targets) • Unidad mínima de ejecución • Agrupan tareas en un orden particular • Exponen secciones del archivo de proyecto como puntos de entrada en el proceso de generación <Target Name=“CrearCarpetas"> <MakeDir Directories="$(BuildDir)" /> </Target>
  24. 24. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Dependencia de Targets • Los destinos pueden describir relaciones entre ellos y llevar a cabo análisis de dependencia. <Target Name=“Tarea1“> ... </Target> <Target Name=“Tarea2“> ... </Target> <Target Name="Copiar“ DependsOnTargets=“Tarea1;Tarea2" > ... </Target>
  25. 25. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Condiciones • MSBuild admite condiciones − 'stringA' == 'stringB„ − 'stringA' != 'stringB„ − <, >, <=, >= − Exists('stringA') − ! , And, Or • Agrupaciones con ( ) • Ejemplo <Error Text="Error al compilar" Condition="'$(ErrorCode)‘ > '0'" />
  26. 26. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Elemento Choose • El elemento Choose contiene una serie de elementos When con atributos Condition que se comprueban de forma ordenada de arriba abajo hasta que uno aparece evaluado como true. • Si más de un elemento When resulta evaluado como true, sólo se utilizará el primero. • Se evaluará un elemento Otherwise, en caso de encontrarse presente, si ninguna condición en un elemento When resulta evaluada como true.
  27. 27. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Elemento Choose • Ejemplo <Choose> <When Condition=" '$(Configuration)'=='Debug' "> ... </When> <When Condition=" '$(Configuration)'=='retail' "> ... </When> </Choose>
  28. 28. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Tarea Exec • Ejecuta el programa o comando especificado con los argumentos especificados. − http://msdn.microsoft.com/es-es/library/x8zx72cd(v=vs.90).aspx <Target Name="EjecutarBat"> <Exec Command='"ejecutar.bat"' ContinueOnError='true'> <Output TaskParameter="ExitCode“ PropertyName="ErrorCode"/> </Exec> <Message Text="The exit code is $(ErrorCode)"/> </Target>
  29. 29. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Registrar librerías • Mediante la tarea Exec se ejecuta el comando: −regsvr32 • Parámetros −/s Sin notificación −/u Quitar del registro • Ejemplo <Target Name="RegisterProjects"> <Message Text=“Registrando dlls..."/> <Exec Command="regsvr32 /s nombredll.dll"/> </Target>
  30. 30. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Extension pack • Incluye tareas adicionales. • Se deben incluir las extension pack. − http://msbuildextensionpack.codeplex.com/ • Ejemplos − Compilar VB6 − Comprimir <MSBuild.ExtensionPack.VisualStudio.VB6 TaskAction="Build" Projects="@(Item_Group)"/> <MSBuild.ExtensionPack.Compression.Zip TaskAction="Create" CompressFiles="@(FilesToZip)" ZipFileName="C:newZipByFile.zip"/>
  31. 31. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Ejecución de MSBuild • Ejecución por línea de comando: • Las opciones de la línea de comandos permiten establecer propiedades, ejecutar destinos específicos y especificar registradores. • Por ejemplo, se ejecuta el archivo MyProj.proj con la propiedad Configuration establecida en Debug. MSBuild.exe MyProj.proj /property:Configuration=Debug
  32. 32. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Ejemplo <Project ToolsVersion="3.5" DefaultTargets="CompilarProyectos" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Target Name="compilarProyecto1"> <Exec Command='"proyecto1.bat"' ContinueOnError='true'> <Output TaskParameter="ExitCode" PropertyName="ErrorCode"/> </Exec> <Message Text="Compilacion Proyecto 1 / Exit code: $(ErrorCode)"/> <Error Text="Error while executing BAT file" Condition="'$(ErrorCode)' > '0'" /> <OnError ExecuteTargets="MessageErrorHandler"/> </Target> <Target Name="compilarProyecto2"> <Exec Command='"proyecto2.bat"' ContinueOnError='true'> <Output TaskParameter="ExitCode" PropertyName="ErrorCode"/> </Exec> <Message Text="Compilacion Proyecto 2 / Exit code: $(ErrorCode)"/> <Error Text="Error while executing BAT file" Condition="'$(ErrorCode)' > '0'" /> <OnError ExecuteTargets="MessageErrorHandler"/> </Target> <Target Name="CompilarProyectos" DependsOnTargets="compilarProyecto1;compilarProyecto2"> </Target> <!--Error Handler--> <Target Name="MessageErrorHandler"> <Message Text="Ha ocurrido un error al ejecutar la compilacion. Por favor revise el log."/> </Target> </Project>
  33. 33. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Build Definitions • Contiene las instrucciones que indican: − Cual es el código del proyecto a compilar − Como debe ejecutarse − Operaciones adicionales
  34. 34. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Crear Build Definitions
  35. 35. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Listado de Builds
  36. 36. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Reportes
  37. 37. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Target de TFS • TFS posee targets pre-definidos para realizar las tareas de TFS Build • Se deben importar en el proyecto: <Import Project="$(MSBuildExtensionsPath)MicrosoftVisualStudioT eamBuildMicrosoft.TeamFoundation.Build.targets" />
  38. 38. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Sobre-escribir targets de TFS • Para integrar la compilación VB6 se requiere sobre-escribir las targets nativos de TFS: − CoreCompile − AfterDropBuild <Target Name="CoreCompile" DependsOnTargets="CompileVB6Projects"></Target> <Target Name="AfterDropBuild" DependsOnTargets="ZipBin;Copiar;Limpiar"></Target>
  39. 39. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Propiedades en TFS • Pares de clave y valor que puede utilizar para configurar las compilaciones de TFS. − http://msdn.microsoft.com/en-us/library/aa337598(v=vs.90).aspx • Estas propiedades se pueden modificar en el archivo TFSBuild.proj para: − Pasar valores a tareas y destinos de TFS Build − Invalidar algunas acciones de compilación • Ejemplos − RunTest − SkipWorkItemCreation
  40. 40. Demo de Build Server con TFS
  41. 41. Av. Belgrano 687 7P C1092AAG Buenos Aires, Argentina | Tel. (+54 11) 5128-3000 | www.tecnosoftware.com.ar Resumen • Build como proceso repetitivo • Distintos escenarios de Build − Integrado al check-in, Unit testing, nightly build, code coverage − Build por branch, build específicos • TFS Build y MS Build
  42. 42. Consultas
  43. 43. Av. Belgrano 687 Piso 7º - Buenos Aires, Argentina Teléfono: (+5411) 5128-3000 www.tecnosoftware.com.ar contacte@tecnosoftware.com.ar

×