Pruebas Funcionales a OpenERP con Selenium IDE (PARTE I)

**En este artículo queremos agradecer a Janet Cardoso por hacer posible con su investigación, la utilización de la herramienta Selenium para su aplicación en pruebas funcionales a OpenERP. Gracias por el tiempo brindado a la causa.**

En estos tiempos de metodologías de programación pragmáticas y gestión de proyectos de forma ágil, la realización de pruebas a nuestro software cobra cada vez mayor importancia. En busca de facilitar la engorrosa tarea de realizar manualmente en cada iteración los casos de prueba planificados, están surgiendo numerosas herramientas para automatizar el proceso de prueba.

Selenium IDE (Integrate Development Environment) es un completo entorno de desarrollo integrado para realizar pruebas de software sobre aplicaciones WEB. Oficialmente «Selenium», funciona como un framework de pruebas que puede ser utilizado en diferentes lenguajes como: C#, Java, Groovy, Perl, PHP, Python y Ruby. Sin embargo Selenium IDE funciona como una extensión (plug-in) del navegador Mozilla Firefox, ofreciendo una serie de funcionalidades muy interesantes que se podrán ver a lo largo de este artículo. Selenium IDE realiza la grabación de la acción seleccionada (navegación por una página) en un «script», el cual se puede editar y parametrizar para adaptarse a los diferentes casos, y lo que es más importante su ejecución se puede repetir tantas veces como se quiera.

Esta herramienta permite al desarrollador de plataforma web ahorrarse mucho esfuerzo en cada iteración, pues solo tendrá que revisar manualmente los casos de pruebas fallidos y podrá automáticamente chequear que todo lo probado anteriormente continua funcionando como se espera. Para ello permite automatizar la realización de pruebas específicas (una acción en particular) o juegos de pruebas (un conjunto de acciones).

¿Cuáles son las principales características de Selenium IDE?

  • Grabación y reproducción fácil
  • Selección inteligente de campos usando ID, nombre o XPath según se necesite.
  • Autocompletado de los comandos de Selenium más comunes.
  • Pruebas de revisión cruzada
  • Depuración y puntos de verificación (breakpoint)
  • Almacenar las pruebas como Selanese, Ruby, Java y otros formatos.
  • Soporte al archivo user-extensions.js
  • Opción para acertar el título de la página.
  • Opción de modificarle a la medida con el uso de complementos
  • Su uso es libre

¿Cuáles otras cosas me permite hacer?

  • Realizar capturas de pantalla
  • Simular acciones de usuario en un navegador: clickear enlaces, rellenar formularios, comprobar que aparece cierto texto en pantalla, cerrar el navegador, pulsar teclas, etc.
  • Forzar eventos
  • Ejecutar JavaScript
  • Controlar popups
  • Abrir páginas nuevas
  • Validar que aparece cierto elemento HTML en la página, mediante XPATH o CSS3

Sigue leyendo

Pruebas Funcionales a OpenERP con Selenium IDE (PARTE II)

**En este artículo queremos agradecer a Janet Cardoso por hacer posible con su investigación, la utilización de la herramienta Selenium para su aplicación en pruebas funcionales a OpenERP. Gracias por el tiempo brindado a la causa.**

Tras varias investigaciones y pruebas realizadas hemos podido ajustar y configurar el Selenium con el fin de explotar al máximo sus fortalezas y realizar las pruebas funcionales sobre OpenERP de una forma más fácil y eficiente. La experiencia adquirida nos permite resumir y hacer notar sobre algunas especificidades a tener en cuenta, por ejemplo: como tratar los campos many2one, la mejor configuración del Locator Builders, estrategias para realizar las pruebas funcionales, entre otros.  Los consejos comentados en este artículo exigen de un conocimiento previo sobre el plug-in Selenium IDE. En caso de necesitar abundar más sobre el tema leer el artículo Pruebas Funcionales a OpenERP con Selenium IDE (PARTE I).

¿Cuál es la configuración del Locator Builders para OpenERP?

Por las características de los URL dinámicos de OpenERP se ajustó que la configuración del orden de los identificadores (localizadores) que mejor ha funcionado en las pruebas sobre OpenERP es el siguiente:

foto9

¿Qué me aconsejas para grabar las pruebas por funcionalidades?

A la hora de grabar las pruebas estas deben ser seccionadas por funcionalidad. A continuación un ejemplo de algunas que se realizaron sobre el módulo de «Control Interno» de la Suite de productos.

Sigue leyendo

¿Cómo documentar módulos en OpenERP?

El proceso de documentación de un módulo permite reflejar datos específicos con el fin de apoyar la catalogación y versionado del mismo. La comunidad de OpenERP tiene sus orígenes en Bélgica por lo que se recomienda documentar en idioma inglés con el fin de homogeneizar la documentación con respecto a la comunidad. A groso modo, la documentación de un módulo en OpenERP consiste en utilizar los atributos del fichero __openerp__.py para describir y reflejar los datos propios del módulo; estos datos serán interpretados por el ORM para identificar cada uno de los módulos que se muestran en el listado de módulos disponibles en OpenERP.

Estructura informativa de los módulos

En el caso de los módulos de OpenERP, los campos disponibles para documentar un módulo específico son:

  • Nombre: Nombre del módulo. Ej. manufacturing
  • Descripción corta: Nombre de identificación comercial del módulo. Ej. Manufacturing industry profile.
  • Categoría: Nombre del Dominio Ej. Account
  • Descripción: Texto de descripción sobre las principales funcionalidades del módulo y sus objetivos.

Sigue leyendo