Publicidad

RSS Android

Robotium es un framework creado para implementar test automáticos de aplicaciones Android. Con esta herramienta se puede testear cualquier tipo de aplicación visual como Activities o Dialogs. Asemejandolo con el mundo del desarrollo web, se podría decir que Robotium es el Selenium de Android.

La dinámica de trabajo con este framework es la programación de acciones que simulen al usuario. Por ejemplo, se puede realizar la acción de realizar click en un texto especificado, introducir un texto en una caja de entrada concreta o busca un texto en el propio formulario. Realizando varias de estas acciones se puede comprobar si hay un texto de salida mediante un Assert y de esta forma validar si la aplicación funciona bien y pasa el test.

Un ejemplo de código en el test sería el siguiente:

solo.sendKey(Solo.MENU); solo.clickOnText("Archivo"); solo.clickOnText("Nuevo"); Assert.assertTrue(solo.searchText("Crear nueva ficha"));

Si deseas probar este framework aquí comento los pasos a realizar: Instalar las herramientas que ofrece y recomienda Google: Eclipse, ADT (Android Develepment Tools), SDK (Software Development Kit) y JDK (Java Development kit). Descargar el fichero robotium-solo-(version).jar que contiene el framework. Será necesario que tengas un proyecto Android con la aplicación que deseas testear. Crear un proyecto de Test Android: Pulsar File->New->Project->Android->Android Test Project. Añadir el fichero jar al proyecto: Pulsar en el proyecto->Build path->Configure Build Path y añadir el jar de Robotium. Modificar el fichero AndroidManifest.xml y cambiar en el atributo targetPackage de ApplicationTesting a ApplicationToTest. Crear un test de ejemplo: Pulsar New->Class, derivar esta clase de ActivityInstrumentationTestCase2 e implementar los test que se deseen. Para probarlo es necesario que el fichero apk tenga el mismo certificado que el proyecto de test. Para ello será recomendable darle un vistazo a la firma de aplicaciones del manual de android. Finalmente ejecutar los test: Pulsar en el proyecto Run As>Android JUnit Test.

Como todos los test automáticos del interface visual, tienen problemas con la estabilidad de propio test. El principal problema que nos podemos encontrar es con la modificación del propio interface, algo habitual cuando se está desarrollando y diseñando la aplicación. Si ocurriese alguna modificación en algún texto, los test afectados se deberían cambiar modificandolos a los nuevos literales.

Al igual que otros test automáticos se puede utilizar con Maven o Ant para integrar las pruebas en algún servidor de integración continua como Jenkins y de esta forma calcular los resultados de los test de manera automática para tenerlos siempre a disposición del equipo.

La licencia de este framework es Apache 2.0 y actualmente se encuentra por la versión 1.7.1. Una herramienta interesante para aquellos apasionados del testing y de Android.

Link de descarga | Robotium

12 herramientas imprescindibles para asegurar la calidad del software (y sus alternativas)

5 Comentarios
12 herramientas imprescindibles para asegurar la calidad del software (y sus alternativas)

Actualmente el número de herramientas a disposición de los equipos de desarrollo para probar software es muy amplio. Para cualquier tipo de prueba que queramos realizar (funcionales, rendimiento, regresión, etc.) el número de opciones disponibles, tanto gratuitas como comerciales, es muy grande. De entre todas estas he elegido 12 herramientas imprescindibles para probar software (y sus alternativas).

En unos casos son programas desarrollados para probar software. En otros, son programas que aunque no nacieron con ese propósito, han demostrado ser perfectos para realizar determinadas pruebas.

Leer más »

Kotlin llega a Gradle: Escribe tus scripts de Gradle usando Kotlin script

2 Comentarios
Kotlin llega a Gradle: Escribe tus scripts de Gradle usando Kotlin script

Hace tiempo que Kotlin se está convirtiendo en una alternativa real para muchos desarrolladores, principalmente en el mundo del desarrollo Android, donde aún seguimos anclados a versiones muy antiguas de Java.

Ya hablamos en su momento sobre cuáles eran las bondades de este lenguaje.

La gente de Gradle se ha dado cuenta de ello, y desde hace unos meses están trabajando con Jetbrains para crear Kotlin Script e integrarlo en Gradle 3.

Leer más »
Publicidad

Otros 12 canales más de Youtube de desarrollo en Español que no te puedes perder

7 Comentarios
Otros 12 canales más de Youtube de desarrollo en Español que no te puedes perder

Hace unos meses os trajimos los 12 canales de Youtube de desarrollo en Español que merecía la pena seguir. Obviamente era un número arbitrario (porque en algún momento hay que parar) pero hay muchos más. Por eso hoy os traemos otros 12 canales de Youtube de desarrollo en Español que merece la pena seguir (algunos de ellos recomendación directa vuestra). Venga, va, ve preparándote que el material es muy jugoso, ¡prometido!

Leer más »

FlowUp, cómo monitorizar el rendimiento de tus aplicaciones Android e iOS

5 Comentarios
FlowUp, cómo monitorizar el rendimiento de tus aplicaciones Android e iOS

Todos los miembros de Karumi hemos estado desarrollando aplicaciones para Android o iOS durante años, y es curioso observar como todos creemos que durante mucho tiempo hemos estado desarrollando aplicaciones prácticamente a ciegas. Para solventar este problema decidimos crear desde cero FlowUp, la plataforma de monitorización de aplicaciones en tiempo real para Android e iOS que estamos desarrollando.

El hecho de que pensemos que hemos estado desarrollando a ciegas durante tanto tiempo es curioso, pero hay una serie de preguntas que validan nuestra tesis. Si tienes un desarrollador de mobile cerca o tú mismo trabajas desarrollando aplicaciones para iOS o Android, intenta encontrar respuesta a las siguientes preguntas:

Leer más »

Cómo manejar Git como un experto desde Android Studio

5 Comentarios
Cómo manejar Git como un experto desde Android Studio

Hoy en día no nos imaginamos el desarrollo de un proyecto de software que no incluya un control de versiones, entre las diferentes opciónes para un VCS, Git, sin duda, se ha posicionado favorablemente por delante de otros grandes como Subversion y Mercurial.

La curva de aprendizaje que este tipo de herramientas suele implicar suele ser bastante alta, ya que la gran variedad de características y opciones que incluyen lo convierten en recursos complejos a la vez de muy potentes.

Leer más »

Kotlin desde el punto de vista de un desarrollador Groovy

13 Comentarios
Kotlin desde el punto de vista de un desarrollador Groovy

Últimamente se está oyendo hablar cada vez más de Kotlin en el entorno de la JVM. Los desarrolladores Java y sobre todos los desarrolladores Android están entusiasmados con este nuevo lenguaje que promete ser una revolución para ellos.

Pero, ¿qué supone Kotlin realmente para un desarrollador Groovy? En GenbetaDev ya hemos hablado anteriormente tanto de Kotlin como de Groovy, así que si quereis conocer más en detalle ambos lenguajes os recomiendo echar un vistazo a ambos artículos. En esta ocasión os voy a contar mi experiencia desde el punto de vista de un desarrollador Groovy al usar (y aprender) Kotlin durante una semana.

¿Estás prepado? ¡Qué comience el combate!

Leer más »
Publicidad

Usando MVP e inversión de dependencias para abstraernos del framework en Android

19 Comentarios
Usando MVP e inversión de dependencias para abstraernos del framework en Android

Desde hace unos años se habla mucho sobre temas de arquitectura en Android, y quien más quien menos ha oído hablar de MVP (Model-View-Presenter), y de cómo usarlo para hacer las vistas (normalmente Activities o Fragments) lo más simples posibles, mientras el Presenter se encarga de toda la lógica de presentación.

Normalmente, una de las reglas que suelen imponerse es que desde el Presenter hacia abajo, ninguna de las capas sepa nada sobre Android, para aislarnos de ella, con todos los beneficios que ello conlleva. Seguramente, si te has puesto a ello por primera vez, rápidamente te surgirán dudas sobre cómo implementar esto.

Leer más »

Por qué prefiero trabajar en una factoría de software en vez de en una Startup

35 Comentarios
Por qué prefiero trabajar en una factoría de software en vez de en una Startup

En el mundo de la programación (al menos en España), las factorías de software tienen la imagen de ser uno de los peores lugares para desarrollarnos como profesionales.

Suele estar extendida la idea de que las denominadas "cárnicas" y, aún peor, las factorías de software que han ido creando durante los últimos años para delegar la implementación de los proyectos, sólo se preocupan por finalizar los proyectos de la forma más rápida posible, sin ningún tipo de calidad, y que a sus trabajadores los explotan por cuatro duros. Yo mismo he escrito sobre el tema anteriormente.

Es por eso que en Genbeta Dev queríamos escuchar la voz de personas que trabajan en ella y disfrutan de su trabajo día a día. Me puse en contacto con tres grandes profesionales que trabajan en las factorías de software de Indra, y esto es lo que me han contado.

Leer más »

Automatizando el testing de web móviles: Appium + Nightwatch.js

4 Comentarios
Automatizando el testing de web móviles: Appium + Nightwatch.js

Cada vez más, el tráfico que reciben los sitios web procede de dispositivos móviles, y nuestras pruebas, como los desarrollos, deben ir cada vez más hacía el 'mobile first', es decir, nuestras pruebas web deben realizarse pensando primero en los dispositivos móviles. Según el artículo 'Internet stats & facts for 2016' de hostingfacts.com:

There are more mobile internet users than desktop internet users; 52.7% of global internet users access the internet via mobile, and 75.1% of U.S. internet users access the internet via mobile

A esto debemos unir que en los entornos encaminados hacía el 'continuous delivery' en los que trabajamos, no tiene sentido que estas pruebas sean manuales. Si queremos ser eficientes, y rápidos en la entrega de valor, debemos tener baterías de pruebas automáticas, que se ejecuten en una cierta variedad de dispositivos, y que nos permitan asegurar que nuestros sitios web cumplen con el nivel de calidad que hemos decidido.

Leer más »

Exprimiendo Android Studio: trucos y atajos de teclado que te harán más productivo

7 Comentarios
Exprimiendo Android Studio: trucos y atajos de teclado que te harán más productivo

Android Studio es la herramienta oficial para el desarrollo de aplicaciones android. Al estar desarrollado sobre IntelliJ IDEA, aprovecha (casi en su totalidad) características de edición de código, análisis, refactor y generación entre otras categorías para desarrollar de forma efectiva.

En su versión 2.2, Android Studio incluye multitud de mejoras como un nuevo editor de UI, interacción con la nueva ConstrainTLayout, APK Analyzer y muchas cosas más, este artículo no se enfoca en cubrir estas novedades. Si buscas información sobre lo nuevo de esta versión, en Genbeta Dev ya hablamos sobre Android Studio 2.2 desgranando todas sus nuevas características.

Leer más »
Publicidad

Ver más artículos