DevOps con Xamarin

Xamarin le permite crear aplicaciones móviles multiplataforma destinadas a Android, iOS y Windows con C#, .NET y Visual Studio. Xamarin permite compartir entre plataformas gran parte del código. Solo es necesario que un pequeño porcentaje sea específico de la plataforma.

El desarrollo de aplicaciones para plataformas modernas implica muchas otras actividades, además de escribir código. Estas actividades, denominadas DevOps (desarrollo + operaciones), abarcan el ciclo de vida completo de la aplicación e incluyen la planeación y el seguimiento del trabajo, el diseño y la implementación del código, la administración de un repositorio de código fuente, las compilaciones, la administración de integraciones e implementaciones continuas, las pruebas (incluidas las pruebas unitarias y las pruebas de la interfaz de usuario), la ejecución de diversas maneras de diagnóstico tanto en entornos de desarrollo como de producción y la supervisión del rendimiento de la aplicación y del comportamiento de los usuarios en tiempo real mediante telemetría y análisis.

Visual Studio, Azure DevOps Services y Team Foundation Server ofrecen una variedad de funcionalidades de DevOps. Muchas de ellas son aplicables por completo a proyectos multiplataforma. Esto es especialmente cierto con las aplicaciones de Xamarin, ya que se compilan con C# y. NET, sobre los que se compilan algunas herramientas de DevOps. Otras herramientas requieren una estrecha integración con los entornos de compilación y de tiempo de ejecución. Dado que las aplicaciones Xamarin se ejecutan en plataformas que no son de Windows y usan la implementación Mono de. NET, Xamarin ofrece herramientas especializadas para ciertas necesidades.

En las siguientes tablas se identifican qué características de DevOps de Visual Studio puede esperar que funcionen bien con un proyecto de Xamarin y cuáles presentan limitaciones. Consulte la documentación vinculada para obtener más información acerca de cada característica.

Herramientas de Agile

Vínculo de referencia: About Agile tools and Agile project management (Sobre herramientas y gestión de proyectos de Agile)

Comentario general: todas las características de planeación y seguimiento son independientes del tipo de proyecto y de los lenguajes de codificación.

Característica Compatible con Xamarin Comentarios adicionales
Administrar trabajos pendientes y sprints
Seguimiento del trabajo
Colaboración en la sala de reuniones del equipo
Paneles Kanban
Notificar y visualizar el progreso

Modelado

Vínculo de referencia: Analizar y modelar la arquitectura

Las características de diseño son independientes del lenguaje de codificación o funcionan con lenguajes .NET como C#. Vea Roles de arquitectura y diagramas de modelado en el desarrollo de software para obtener información sobre los aspectos relacionados con el código.

Característica Compatible con Xamarin Comentarios adicionales
Diagramas de secuencia
Gráficos de dependencia
Jerarquía de llamadas
Diseñador de clases
Explorador de arquitectura
Diagramas UML (caso de uso, actividad, clase, componente, secuencia y DSL)
Diagramas de capas
Validación de capas

Código

Característica Compatible con Xamarin Comentarios adicionales
Uso del control de versiones de Team Foundation (TFVC) o Azure Repos.
Introducción a Git en Azure Repos
Mejorar la calidad del código
Buscar cambios en el código y otro historial Excepto en los límites específicos de la plataforma donde la implementación no se resuelve hasta el tiempo de ejecución.
Usar mapas de código para depurar aplicaciones

Build

Vínculo de referencia: Azure Pipelines

Característica Compatible con Xamarin Comentarios adicionales
Servidor TFS local Los equipos de compilación deben tener instalado Xamarin y se pueden vincular a un equipo OSX para compilar para iOS. Vea Usar TFVC.
Servidor de compilación local vinculado a Azure Pipelines Vea Build and release agents (Agentes de compilación y versiones) para obtener instrucciones.
Servicio de controlador hospedado de Azure Pipelines Vea Build your Xamarin app (Crear su aplicación de Xamarin).
Compilar definiciones con scripts anteriores y posteriores
Integración continua, incluidas entradas validadas Entradas validadas para TFVC solo cuando GIT funciona en un modelo de solicitud de extracción en lugar de entradas.

Prueba

Característica Compatible con Xamarin Comentarios adicionales
Planear pruebas, crear casos de prueba y organizar conjuntos de pruebas
Pruebas manuales
Administrador de pruebas (grabar y reproducir pruebas) Dispositivos Windows y emuladores de Android únicamente de Visual Studio.
Cobertura de código N/D
Haga una prueba unitaria de su código Para destinos Windows y Android, pueden usarse las herramientas integradas de MSTest. Xamarin recomienda NUnit para ejecutar pruebas unitarias en Windows, Android e iOS. Vea Usar TFVC.
Usar la automatización de la interfaz de usuario para probar el código Solo Windows La grabadora de pruebas de interfaz de usuario de Visual Studio es solo para Windows. Para todas las plataformas, vea Xamarin.UITest.

Mejorar la calidad del código

Vínculo de referencia: Mejorar la calidad del código

Característica Compatible con Xamarin Comentarios adicionales
Analizar la calidad del código administrado
Buscar código duplicado mediante la detección de clones de código
Medir la complejidad y el mantenimiento del código administrado
Explorador de rendimiento No Use Xamarin Profiler a través de Visual Studio para Mac en su lugar. Tenga en cuenta que el generador de perfiles de Xamarin está actualmente en vista previa y aún no funciona para destinos de Windows.
Analizar problemas de memoria de .NET Framework No Las herramientas de Visual Studio no tienen enlaces al marco de trabajo de Mono para la generación de perfiles.

Administración de versiones

Vínculo de referencia: Compilación y versiones en Azure Pipelines y TFS

Característica Compatible con Xamarin Comentarios adicionales
Administrar procesos de versión
Implementar en servidores para la instalación de prueba mediante scripts
Cargar a la tienda de aplicaciones Parcial Hay extensiones disponibles que pueden automatizar este proceso para algunas tiendas de aplicaciones. Vea Extensions for Azure DevOps Services (Extensiones para Azure DevOps Services); por ejemplo, la extensión para Google Play.

Supervisión con el SDK de App Center

Vínculo de referencia: Supervisión con el SDK de App Center

Característica Compatible con Xamarin Comentarios adicionales
Análisis de bloqueo, telemetría y distribución beta