[VideoBlog] Testing de Apps Xamarin

Bug - 02Introducción

La calidad en el software es algo innegociable. Debemos entregar Apps móviles perfectamente adaptadas a cada plataforma, ofreciendo la mejor experiencia de usuario posible pero sobretodo, funcional. Una App funcional debe cubrir y cumplir unos mínimos exigentes de calidad.

Como desarrolladores, somo humanos y el código no estara libre de errores. Sin embargo, el proceso que apliquemos para la detección y corrección a los mismos, es vital.

Podemos crear dos tipos de pruebas diferenciadas:

  • Pruebas unitarias: Pruebas de pequeñas unidades funcionales de nuestra App. Utilizaremos NUnit para realizar estas pruebas unitarias generalmente de ViewModels, Helpers y Servicios.
  • Pruebas de interfaz de usuario: Pruebas sobre la interfaz de usuario, escritura en cajas de texto, pulsaciones de botones, etc. Utilizaremos Xamarin UITest para estas pruebas.

Creando Tests de Apps Xamarin

A continuación, utilizando como base una aplicación de una calculadora realizada en Xamarin.Forms, se muestra en video:

  1. Introducción al concepto de pruebas unitarias.
  2. Como crear pruebas unitarias a un proyecto Xamarin.
  3. Conceptos básicos necesarios de Xamarin.UITest.
  4. Crear proyecto de tipo Xamarin.UITest.
  5. Introducción a Xamarin Test Cloud.
  6. Lanzar pruebas de tipo UITest en Test Cloud.

Tenéis el código fuente del ejemplo utilizado disponible en GitHub:

Ver GitHub

Recordad que podéis dejar cualquier comentario, sugerencia o duda en los comentarios.

Más información

Anuncios

[VideoBlog] Nuevas plantillas Xamarin.Forms

Introducción

Las plantillas de proyectos así como de diferentes tipos de archivos son una necesidad básica y muy requeridos a la hora de arrancar un proyecto. En la última actualización de Xamarin, la versión RC del Cycle 9, nos encontramos con novedades en las plantillas de proyectos Xamarin.Forms:

Nuevas plantillas

Nuevas plantillas

Ahora al seleccionar la plantilla Cross Platform App disponible en la categoría Cross Platform, tenemos disponible un asistente que nos permite configurar el proyecto:

  • Entre utilizar Xamarin.Forms o Xamarin.Classic.
  • PCL o Shared.
  • Plantilla vacía o maestro detalle.
  • Añadir proyecto Azure Mobile App directamente.
Configuración del proyecto

Configuración del proyecto

Tras crear un proyecto Xamarin.Forms, podemos añadir nuevas páginas y tenemos novedades:

Nuevas plantillas de archivos

Nuevas plantillas de archivos

Ahora contamos con plantillas para crear nuevas páginas utilizando:

  • Mapas
  • Pestañas
  • Listado

Si añadimos una página de tipo listado:

Plantilla listado en ejecución

Plantilla listado en ejecución

No solo añade la vista, también una ViewModel asociada con datos FAKE.

ViewModel

ViewModel

Un vistazo en video

Suena interesante, ¿cierto?. Si te lo parece, no te pierdas el siguiente recorrido por las novedades en video.

Más información

[VideoBlog] Un vistazo a XenForms

XenFormsIntroducción

Xamarin.Forms es un framework que añade una capa de abstracción sobre la parte de UI permitiendo crear aplicaciones multiplataforma nativas compartiendo tanto la lógica de negocio como la interfaz de usuario. En los últimos tiempos hemos ido recibiendo tanto por parte de Xamarin como por parte de la comunidad gran cantidad de mejoras para aumentar el rendimiento en el desarrollo como el editor visual, Xamarin.Forms Previewer o Gorilla Player.

XenForms

La comunidad sigue creciendo a un ritmo imparable ofreciendo cada vez más y mejores opciones. Hoy estamos ante XenForms, herramienta creada por Michael Davis destinada a editar interfaces en Xamarin.Forms. Permite crear interfaces partiendo desde cero añadiendo Layouts y Views.

Construyendo la UI desde cero

Construyendo la UI desde cero

Además de poder editar cada propiedad de cada elemento, o los eventos.

Modificación de propiedades

Modificación de propiedades

También podemos cargar un proyecto ya existente para previsualizar la interfaz, hacer cambios al vuelo con el editor visual editando propiedades, hacer cambios a nivel de XAML, etc.

Carga de proyectos existentes

Carga de proyectos existentes

Suena interesante, ¿cierto?. Si te lo parece, no te pierdas el siguiente recorrido por la herramienta en video.

También se puede trabajar con Apps utilizando MVVM realizando pruebas de enlaces a datos (interactuar con la aplicación a la par que se edita), uso de propiedades avanzadas y adjuntas, etc.

Una herramienta interesante y sin duda con mucho potencial, ¿y a ti, qué te parece?.

Más información

[VideoBlog] Un vistazo a Xamarin.Forms Previewer

Introducción

Xamarin.Forms es un framework que añade una capa de abstracción sobre la parte de UI permitiendo crear aplicaciones multiplataforma nativas compartiendo tanto la lógica de negocio como la interfaz de usuario. En el pasado Evolve 2016 se mostraron novedades de peso permitiendo aumentar el rendimiento en el desarrollo además de nuevas caracterísiticas.

Xamarin.Forms Previewer

Hasta ahora, cada vez que queríamos previsualizar un cambio de una vista en Xamarin.Forms requería una compilación y despliegue de la aplicación a un emulador o dispositivo físico. No es de extrañar que una de las opciones más solicitadas en el trabajo con Xamarin.Forms fuese un editor visual. Gracias a un editor visual podríamos ver cada cambio al vuelo, de forma inmediata sin necesidad de compilaciones ni despliegues incrementando considerablemente nuestra productividad. La espera ha llegado a su fin. Xamarin ha lanzado la Preview (disponible para Xamarin Studio) de Xamarin.Forms Previewer, editor visual para Xamarin.Forms.

Además de poder previsualizar cualquier cambio en nuestro marcado XAML directamente al vuelo, Xamarin.Forms Previewer es capaz de:

  • Podemos cambiar la previsualización en iOS y Android rápidamente además de tamaños y orientación.
  • Mostrar Custom Renders.
  • Mostrar datos de prueba en diseño.

Ante una novedad de tanto peso, no es de extrañar que en este nuevo VideoBlog nos lancemos de lleno a probar todas las opciones disponibles.

Tenéis el código fuente disponible e GitHub:

Ver GitHub

Recordad que podéis dejar cualquier comentario, sugerencia o duda en los comentarios.

Más información

[VideoBlog] Acelerando el desarrollo en Xamarin

Introducción

Cada vez que nos llega a los desarrolladores un nuevo SDK, es un momento especial con una mezcla de altísima curiosidad y ganas de probar novedades. Entre las novedades principales siempre hay nuevas APIs, controles y otros elementos para poder realizar Apps que antes no eran posibles. Sin embargo, entre el conjunto de novedades siempre suelen venir nuevas herramientas que facilitan ciertas tareas: obtener más analíticas, mejores medidores de rendimiento, crear pruebas de UI, etc.

A parte de las herramientas oficiales que nos llegan por otro lado, la incansable comunidad sigue su ritmo lanzando su propias herramientas. En el VideoBlog de hoy nos centramos en las últimas herramientas más destacadas que llegan de la comunidad para facilitarnos la vida y aumentar nuestra productividad.

Continuous Coding, Xamarin.Forms Player y Gorilla Player

Trataremos tres herramientas diferentes:

  • Xamarin.Forms Player: El objetivo principal es permitir ver cualquier cambio visual en layouts, estilos o imágenes de forma inmediata sin necesidad de compilar.
  • Gorilla Player: Ver cambios de UI al vuelo en una App Xamarin.Forms además de poder usar datos de prueba, modificar estilos o detectar errores de marcado XAML.
  • Continuous Coding: La propuesta es reducir al máximo el ciclo de compilar y ejecutar permitiendo en tiempo real evaluar el código tanto de la lógica como por puesto a nivel de UI. Poder contruir la interfaz al vuelo viendo directamente los resultados de cada línea aplicada además de poder enlazar la misma con la lógica y el backend segun vamos escribiendo.

Recordar que cualquier sugerencia o duda la podéis dejar en los comentarios tanto del blog como del video.

Más información

[VideoBlog] Animaciones en Xamarin.Forms

Animation02Introducción

En todas las plataformas, las aplicaciones móviles incluyen animaciones que otorgan movimiento, fluidez y focalizan la atención del usuario en las zonas deseadas. Actualmente no son un extra o añadido en las aplicaciones, sino una parte importante en la experiencia y usabilidad de las mismas.

Como desarrolladores, debemos no solo cuidar por supuesto el correcto funcionamiento de la aplicación, sino que debemos preocuparnos también por la usabilidad y la experiencia otorgada, donde entran en juego las animaciones.

Por ello, abordamos un nuevo VideoBlog totalmente centrado en el uso de animaciones en Xamarin.Forms.

Animaciones en Xamarin.Forms & Xamanimation

Xamarin.Foms incluye una serie de métodos de extensión que nos permiten realizar una completa gestión de animaciones desde código C#.

Por un lado tenemos disponibles una serie de animaciones predefinidas disponibles como métodos de extensión para elementos de tipo View. Contamos con animaciones para realizar rotaciones, escalados, tralaciones, etc. En caso de necesitar animaciones más complejas podemos utilizar las extensiones de animación. Contamos con varias sobrecargas del método Animate que nos permite definir animaciones más complejas.

Para complementar y expandir las posibilidades contamos con Xamanimation. Es es una librería gratuita destinada para Xamarin.Forms que tiene como objetivo facilitar el uso de animaciones a los desarrolladores. Añade un conjunto de animaciones de uso muy sencillo tanto desde código C# como desde código XAML. Podemos definir animaciones en XAML a un elemento visual al cargar mediante un Behavior, usar un trigger en XAML para ejecutar la animación a voluntad al lanzar el trigger o bien desde código C#.

Más información

 

VideoBlog, nuevo formato en el Blog!

YouTubeNovedad en el blog

Son ya varios años de vida de este modesto Blog. En todo este tiempo de forma periódica se han ido publicando artículos sobre desarrollo, quedadas, eventos y otras entradas con el objetivo de ayudar en la medida de lo posible a la comunidad. Sin duda, un formato que encaja, me divierte y sin duda seguirá. Sin embargo, en ocasiones, hay entradas que por tamaño se deben dividir en varias partes, desarrolladores interesantes que me permiten probar una App o una herramienta de desarrollo o ocasiones en las que lo que se intenta trasmitir es una experiencia más que un conocimiento puro. Para todas estas situaciones, se añadirán junto a las habituales, un nuevo formato al blog.

Nuevo formato

Para los casos anteriores, experiencias, desarrollos paso a paso que requieren mayor dedicación o momentos con otros desarrolladores para analizar nuevas herramientas o Apps nacen las “video entradas”. Serán entradas que combinarán una parte escrita pero apoyadas con la potencia y versatilidad de un video. En ocasiones serán videos grabados previamente y lanzados en conjunto con la entrada mientras que, en ocasiones de mayor interés, se realizarán videos con streaming en directo permitiendo la participación de todos por supuesto guardando la grabación para su visionado a posteriori.

Más información