¿Que es Exploratory Testing?

  Para mí, Exploratory Testing (ET) es la forma "Natural" de afrontar las pruebas. Es una forma científica de pensar, donde el tester dispone de la libertad necesaria para optimizar su trabajo basándose en un proceso cíclico de actividades retroalimentadas que se realizan de forma paralela durante el proyecto.

En ET el tester explora el juego mientras de manera simultanea diseña y ejecuta pruebas, de forma que el resultado de una prueba condiciona el diseño y la ejecución de la siguiente. 
Lo podría definir como "Testing Driven Testing" (pruebas dirigidas por pruebas).




El objetivo de ET es descubrir información sobre el juego, por lo que es la mejor forma de encontrar  comportamientos que no han sido tenidos en cuenta anteriormente y otras "sorpresas".


Dos aspectos importantes a señalar son los siguientes:


1. Exploratory Testing no es una técnica.

Exploratory Testing no es una técnica de pruebas. Es una forma de pensar en pruebas.
Cualquier técnica se puede aplicar de una forma exploratoria.


2. Exploratory Testing != Ad Hoc

Ad Hoc testing es un proceso improvisado de búsqueda desorganizada de bugs. Por definición, cualquiera prodría hacer Ad Hoc testing.

El ET se realiza en sesiones orientadas a partes o características concretas del juego a probar habiéndose definido previamente una estrategia o táctica.
Exploratory Testing está orientado, Ad Hoc testing no.


El primer paso del Exploratory Testing debe ser la investigación acerca del juego o funcionalidad a probar. Es esencial el estudio de la documentación existente (requisitos , especificaciones, documentación funcional, diseño) asi como otros referentes que aporten valor (juegos similares, experiencias previas, etc). 

Una de las cosas que más condicionará el desarrollo del juego y que el tester debe tener presente y recoger información sobre ello, es el CONTEXTO del mismo. El principal elemento del contexto es el equipo humano (desarrolladores, managers, usuarios, etc).

Contra más información tenga el tester, más inteligentemente podrá probar.


Un buen "Exploratory Tester" tomará notas de las ideas que le surjan con la intención de ejecutarlas en futuros ciclos. Estas notas pueden parecerse mucho a un caso de prueba (test script), pero no lo es.


El buen ET es disciplinado y presentará las siguientes características:

  • Amplia variedad de técnicas de análisis/diseño de pruebas con el objetivo de ampliar los puntos de vista con los que se afronta la aplicación.

"La forma en la que miramos determina lo que vemos" 


  • Uso de "charters" o lo que se entendería como misiones que ayudarán al tester a enfocar sus esfuerzos hacia los aspectos que más interesen a los "stakeholders" (destinatario de la información que reporta el tester, como pueden ser los diferentes equipos de desarrollo, equipo de produccion, publisher, etc).


Desafios del Exploratory Testing

Los principales desafios a los que se enfrenta un tester al hacer Exploratory Testing son los siguientes:

– Aprender (Como conocer el juego y su alcance)

– Visibilidad (Como ver bajo la superficie)

– Control (Como manejar valores internos del juego)

– Riegos / selección (Cual es la mejor prueba que puedo hacer)

– Ejecución (Cual es la forma más eficiente de hacer las pruebas)

– Oráculos (Como saber si el resultado de la prueba fue correcto)

– Reporte (Como reproducir y comunicar un problema de forma efectiva)

– Documentación (Que documentación necesito)

– Métricas (Que métricas son apropiadas)

– Cuando Terminar (Como decido cuando parar de probar)


Exploratory Testing es especialmente útil a la hora de probar funcionalidades o situaciones complejas, cuando se dispone de poca información sobre ellas, o como preparación para una posterior generación de casos de prueba detallados.

Enlaces de interes:


Comentarios