Buenas prácticas para el testing funcional

Las últimas semanas hemos hablado de testing funcional, así que esta semana me gustaría traducir un artículo de InfoQ titulado “Functional GUI Testing Automation Patterns”( http://www.infoq.com/articles/gui-automation-patterns)

El proceso de desarrollo de una suite automática de pruebas funcionales para una aplicación específica no es muy diferente del proceso de creación del programa en sí. Existen muchas herramientas y cada días se crean nueva para conseguir interactuar con el sistema bajo prueba (SUT).

Hoy en día existen multitud de metodologías y enfoques para enfrentarnos al desarrollo software: desde la programación orientada a objetos, la programación funcional, diseño guiado por dominio (domain drive desing), desarrollo guiado por pruebas (TDD), desarrollo guiado por comportamiento (Beharvior Driven Development BDD), etc.

En este caso vamos a dirigirnos hacia las pruebas de interfaz (GUI) cuando el sistema bajo prueba (SUT) se presenta como una caja negra para el tester de aplicaciones.

Continúa leyendo “Buenas prácticas para el testing funcional”

La jerga del testing ataca de nuevo

Hace un par de semana realizamos un artículo con definiciones referentes al mucho del testing, hoy vamos a extender ese post con nuevas definiciones. Hemos hablado de TDD, de PHPUnit y creo que la mejor forma de afianzar conceptos es definirlos de una manera simple y práctica.

Así que allá vamos:

Continúa leyendo “La jerga del testing ataca de nuevo”

Primeros pasos con Selenium 2 webdriver

Ya llevamos algunos post sobre testing, TDD, PHPUnit, etc. vamos a seguir tocando un poco este tema hablando de las pruebas funcionales. Sé que me dejo cosas atrás, pero me gustaría dar una pasada a casi todo lo de testing para más adelante poder ir hablando un poco más sobre cada tema.

Hoy vamos a tratar el tema del testing funcional, para el que no lo conozca el testing funcional a grandes rasgos verifica que la aplicación software cumple todos los requisitos especificados. Estas pruebas son normalmente de caja negra, es decir no es necesario conocer el código fuente de la aplicación.

Las pruebas funcionales están muy ligadas a los tests de aceptación, a las pruebas de interfaz de usuario y por tanto existen multitud de herramientas para este fin, y voy a centrarme en testing de aplicaciones web, así que entre las más populares están Watir(http://watir.com/), Sahi (http://sahi.co.in/), Canoo(http://webtest.canoo.com/webtest/manual/WebTestHome.html) y como no Selenium (http://docs.seleniumhq.org/)

Selenium

Es la Suite de Herramientas que más me gusta, aunque he de decir que la documentación aunque es muy extensa es a veces confusa, por ello voy a explicar un poco que es esto de Selenium y como incorporar el testing funcional a las aplicaciones.

Continúa leyendo “Primeros pasos con Selenium 2 webdriver”

la jerga del testing

Hace ya unos cuantos post que estoy hablando sobre testing, PHPUnit, TDD y demás. Llegados a este punto tengo nos cuantos conceptos en la cabeza y no quiero que se me olviden así que he decidido escribirlos todos en un post.

Tiempo atrás escribí otro post sobre la jerga de los informáticos, así que ahora creo que es el momento de escribir “LA JERGA DEL TESTING”

Así que vamos a por ello:

Setup / Test / Assert / tear down

Toda prueba automática se compone de 4 partes:

  • Setup: Todo lo que se necesita antes de ejecutar la prueba.
  • Test: Es el código que queremos probar.
  • Assert: Es la parte donde comparamos el resultado del código con alguna condición esperada.
  • Teardown: Limpiamos todo lo que hallamos utilizado durante la prueba para dejar el software que estamos probando en un estado estable,tal y como estaba antes del setup.

Continúa leyendo “la jerga del testing”