Archive

Author Archive

Errores comunes al hacer pruebas de software de nuestro código

Los desarrolladores cada vez estamos más concienciados de la importancia de las pruebas de software. Pero no podemos pasar por alto la calidad de estas pruebas, ya que podemos caer en errores no contemplados sin darnos cuenta. No es suficiente con hacer un par de tests y pensar que todo está todo correcto porque nuestra aplicación pasa esos tests, es importante pararse a pensar si cómo hemos planteado las pruebas es la forma correcta para detectar errores reales del código.

A continuación se mostrarán algunos errores comunes a la hora de hacer tests extraídos de un interesante post en Dzone sobre testing.

Test unitarios

Es sencillo probar una clase de utilidad con sólo llamar a todos los métodos de la clases, pasando valores y comprobando si el resultado es el esperado. Aquí caemos en el error de hacer pruebas del estilo: 1+1=2 y 2+1=3. Pero no hacemos, por ejemplo, pruebas de casos limites como cuando los valores son null o si se provoca una excepción, estas quedan muchas veces fuera de nuestras pruebas.

El uso de Mocks

Si nos encontramos en el caso de que queremos probar la capa de servicio, el DAO lo solemos simular manualmente. Un terrible error que puede llevar a confusiones en los test, para hacer este trabajo deberíamos usar un Mock que nos permite hacer pruebas más cercanas a la realidad para eso están creados.

Podemos elegir entre varios framework como Mockito o EasyMock, entre los más conocidos. Pero tener cuidado de elegir el correcto, el exceso de simplicidad o, por el contrario, el de complejidad nos puede traer algún que otro quebradero de cabeza.

Test de integración

En los test de integración cubrimos las diferentes piezas que trabajan en conjunción de nuestra aplicación. Una de ellas es la capa DAO, con la que intentamos validar el funcionamiento conjunto con los parámetros de entrada, las conexiones de base de datos y si sus respectivas queries son las correctas.

Solemos caer en el error de no usar datos que se correspondan con los reales, por lo que nuestros test pueden ser trucados con parámetros de entrada que reciban de la base datos información errónea o incompleta haciendo malabarismos manualmente para comprobar que el test es correcto. También es importante poder cargar datos de tal forma que podamos volver de nuevo al estado inicial.

Test funcionales

Después de probar buena parte de nuestro código técnicamente, no debemos olvidar los bugs funcionales. A través de los test funcionales podemos detectar esos errores. Aunque tengamos la percepción de que son difíciles y costosos de mantener más lo es hacer eso manualmente.

Selenium es una gran framework para grabar este tipo de test con el navegador, aunque caemos en el error de sólo hacerlos ahí. Selenium trackea los componentes HTML, por lo que si cambiamos algo de la página romperemos el test inmediatamente y no necesariamente es porque esté mal. Una opción más robusta es usar API WebDriver que proporcionar una interfaz de programación alternativa para testear con una API orientada a objetos.

Otra cosa que tenemos que tener en cuenta es dejar también en los test cada elemento o dato en su estado inicial. Si en un test hacemos login, debemos recordar cerrar sesión para no interferir en posteriores test o al contrario.

Artículo sacado de GenbetaDev

Advertisements
Categories: Desarrollo, Testing Tags: ,

Jira Mobile Connect: seguimiento de los bugs de nuestras aplicaciones móviles iOS o Android

12/28/2011 1 comment

Una vez distribuida una aplicación móvil es complicado hacer un seguimiento de los posibles errores o bugs que experimente nuestros usuarios en sus propios terminales. En muchas ocasiones, esos errores se traducen en puntuaciones malas en la AppStore o en el Android Market. Por todo esto es interesante herramientas como Jira Mobile Connect que nos permiten enganchar nuestra aplicación móvil con el sistema de bug tracking de Jira para conocer en detalle los errores que se produzca con una traza completa y el feedback que el usuario nos quiera dar.

Jira Mobile Connect dispone de un conjunto de librerías para que los desarrolladores podamos incluirlo tanto en aplicaciones para iOS (iPhone/iPad) como Android (estará en Enero disponible). Una vez integrado en nuestra aplicación, con unos sencillos pasos, el usuario puede enviarnos en un momento el feedback correspondiente al error que haya detectado. Además, se puede incluir una captura de pantalla o incluso realizar una grabación. El feedback llega directamente a nuestro Jira, donde podremos ver información detallada del dispositivo y de las condiciones en las que se encontraba en ese momento la aplicación. Un añadido extra es la integración de un sistema de mensajería para comunicarnos directamente con el usuario para ayudarle o recabar más información en contacto directo.

A simple vista parece una idea genial aunque requiera cierta motivación del usuario para enviarnos el ticket del fallo junto a un comentario. De todos modos nos sirve para centralizar todo ese feedback que nos llega disperso a las cuentas de soporte y no son incluidos en el listado de bugs o incidencias. Eso sí, necesitaremos saber filtrar convenientemente desde el Jira para diferenciar de qué tipo de feedback se trata y si son errores realmente.

En un entorno de beta privada con betatesters de nuestra aplicación dispuestos me parece una solución genial, aunque en un entorno comercial no le acabo de ver encaje sin tener que disfrazarlo de un sugiere algo y filtrar la gran cantidad de feedback que nos puede llegar.

 

Fuente-GenbetaDev

Categories: Tecnologías

El pavimento inteligente llega a Madrid con conexión WiFi, Bluetooth y RDIF

El ayuntamiento de Madrid está apoyando una iniciativa con la que muchos ciudadanos disfrutarán de conexión a internet gratuita en plena Puerta del Sol, además de recibir mensajes de alerta con información de interés y otro tipo de servicios como la posibilidad de descargar mapas de la ciudad o planos del transporte público. Todo ello es posible gracias a la utilización del llamado Pavimento Inteligente, una superficie que consiste en una baldosa a la que se le ha integrado un controlador con sensores y antenas que permitirá recolectar información como la temperatura y la presión del ambiente, así como enviar mensajes a través de Bluetooth a los ciudadanos que por allí pasen e incluso informar sobre la situación de una persona a través de etiquetas RDIF. Se trata de un proyecto experimental desarrollado por ASEPI (Agrupación Empresarial Innovadora del Pavimento Inteligente en España) que esperan ir incorporando en más zonas de la ciudad, así que esperamos que tenga buena acogida y podamos ver más calles equipadas con esta interesante tecnología. A continuación te dejamos con un vídeo en el que podrás ver una explicación de la tecnología.

Vídeo

Enlace a Engadget

TUYYOU, una nueva red social española de vertiente comercial que nos permite ganar dinero

El terreno de las redes sociales está tan saturado ya, que cualquier nueva propuesta que surja ha de hacer lo imposible para poder destacar entre la jungla. Leyendo la nota de prensa publicada hoy por TUYYOU para anunciar su lanzamiento en fase beta, queda claro que sus responsables han intentado apostar por algo diferente.

La herramienta es una combinación de diferentes ideas: red social en su sentido más tradicional, plataforma profesional donde encontrar trabajo y red comercial donde conseguir descuentos en productos y servicios. Se trata pues de una forma de conectar a sus usuarios, como potenciales clientes, con las marcas interesadas en usar la red como canal de venta, en lo que definen como social e-commerce. Empresas como El Corte Inglés, Opticalia o Venespa Development se han unido al proyecto.

Así pues no se trata de un simple portal de comercio de electrónico, sino de un punto donde encontrar ofertas interesantes e ir acumulando puntos que nos permitirán obtener beneficios por las compras e incluso formar parte del proyecto empresarial pagar ganar algo de dinero. El registro en TUYYOU es gratuito, aunque existen perfiles de pago que permiten obtener mayores comisiones al participar en la red. Desde luego es una mezcla un tanto atípica y habrá que ver si consigue ser del agrado de los usuarios, pero como opción diferente ahí queda.

Enlace a noticia.

 

Categories: Tecnologías Tags: ,

Un iPhone con “airbag”, no tan descabellado

 

Materiales más resistentes como el kevlar usado en el Motorola Razr, sistemas que detectan la caída del teléfono y provocan que éste aterrice en la parte más resistente del mismo y ahora, sistemas que detendrían el impacto mediante bolsas de aire u otros materiales al más puro estilo de los airbags en vehículos.

La idea de proteger los móviles, especialmente las pantallas, con dispositivos del tipo airbag no es nueva, pero la salida a la luz de una patente de Apple reaviva el interés en este tipo de sistemas. Con móviles que requieren una inversión en dinero importante, cualquier protección es poca, y las marcas buscan explotar esa preocupación de los consumidores.

El teórico sistema de protección contra golpes patentado por Apple se valdría de una zona entre la pantalla y la estructura del teléfono que, mediante un capa hinchable, se encargaría de proteger de un brusco impacto la integridad de este delicado componente.

El problema no parece estar en la fragilidad de los materiales con los que se fabrican las pantallas, que mejora año tras año, sino en el minúsculo grosor de las mismas, lo que provoca que cualquier caída, por pequeña que parezca, sea un potencial peligro para las pantallas. ¿Veremos pronto este sistema implantado en algún teléfono comercial?

Enlace

Categories: Tecnologías Tags: ,

Dwolla, el servicio de pago por Internet sin tarjeta de crédito que ha llegado para quedarse

11/15/2011 1 comment

Lo primero que es imprescindible mencionar a la hora de presentar Dwolla es que no efectúa transacciones mendiante tarjetas de crédito, sino desde cuentas bancarias. Su principal objetivo es permitir las mismas comodidades y agilidad en el pago que ofrece el plástico, pero sin caer en los costes y restricciones que éste implica.

Noticia completa: http://www.genbeta.com/herramientas/dwolla-el-servicio-de-pago-por-internet-sin-tarjeta-de-credito-que-ha-llegado-para-quedarse

StoreYa, convierte tu perfil de Facebook en una tienda online basada en Magento

Buena muestra de ese avance es StoreYa, una herramienta que permite trasladar una tienda desarrollada en Magento a Facebook, haciendo de la popular red social un escaparate más para nuestros productos. Lo verdaderamente interesante de esta solución es que realiza el trabajo de una forma sorprendentemente fácil, casi automatizada….

Noticia completa :  http://www.genbeta.com/herramientas/storeya-convierte-tu-perfil-de-facebook-en-una-tienda-online-basada-en-magento

Categories: Tecnologías Tags: ,
%d bloggers like this: