PICKLES: a Natural Language Framework for Requirement Specification and Model-Based Testing
Este artículo presenta PICKLES, un marco de trabajo en lenguaje natural que une el Desarrollo Guiado por Comportamiento y las Pruebas Basadas en Modelos traduciendo escenarios legibles por humanos a modelos formales para permitir la generación automática de pruebas con una cobertura significativamente mayor que la del BDD estándar.
Artículo original bajo licencia CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo
Imagina que estás intentando enseñar a un robot a conducir un coche. Tienes dos formas principales de hacerlo:
- El método del "Ingeniero Estricto" (Pruebas Basadas en Modelos): Escribes un plano matemático complejo de cada carretera posible, condición meteorológica y semáforo. Es increíblemente preciso y cubre cada escenario, pero solo un matemático puede leerlo. Si quieres mostrarle al jefe lo que hará el robot, tienes que traducir las matemáticas de nuevo al inglés, lo cual es difícil y propenso a errores.
- El método del "Narrador" (Desarrollo Guiado por Comportamiento): Escribes una historia: "Dado que el coche está en la carretera, Cuando el semáforo se pone en rojo, Entonces el coche se detiene." Todos lo entienden. Es fácil de escribir y leer, pero es como escribir una receta solo para un día específico. Si quieres probar cada posible temporización de semáforo, tienes que escribir miles de historias separadas, lo cual se convierte en un montón de papeles desordenado e inmanejable.
El Problema:
En el mundo real, las empresas quieren la precisión del "Ingeniero Estricto" pero la legibilidad del "Narrador". Por lo general, tienen que elegir uno u otro. Si eligen la historia, se pierden errores ocultos. Si eligen las matemáticas, nadie entiende las pruebas.
La Solución: PICKLES
Los autores de este documento crearon un nuevo marco llamado PICKLES (Lenguaje Basado en Palabras Clave de Entrada y Flujo de Control Preciso para Escenarios de Prueba). Piensa en PICKLES como un "Traductor Universal" que cierra la brecha entre las historias y las matemáticas.
Así es como funciona, usando una analogía simple:
1. La "Receta Inteligente" (El Lenguaje)
En lugar de escribir una historia sobre un coche específico deteniéndose en un semáforo rojo específico, PICKLES te permite escribir una "Receta Inteligente".
- Método Antiguo: "El coche se detiene en el semáforo rojo de la Calle Principal." (Demasiado específico).
- Método PICKLES: "El coche se detiene en cualquier semáforo rojo, siempre que la luz esté en rojo y el coche esté en movimiento."
- La Magia: Puedes definir reglas como "La luz puede ser cualquier color desde Rojo hasta Verde" o "El coche puede tener cualquier velocidad entre 0 y 100". Esto se llama parametrización. Convierte una sola historia en una regla que cubre miles de posibilidades a la vez.
2. El "Arquitecto Automático" (La Traducción)
Una vez que escribes estas "Recetas Inteligentes" en inglés plano (usando un formato similar al popular lenguaje Gherkin), la herramienta PICKLES actúa como un Arquitecto Automático.
- Lee tus reglas en inglés.
- Construye instantáneamente un Modelo Formal (un mapa matemático complejo) detrás de escena.
- Este mapa es tan detallado que conoce cada posible ruta que el sistema podría tomar, incluso rutas que no escribiste explícitamente.
3. El "Mapa Maestro" (Combinando Historias)
En las pruebas tradicionales, pruebas la Historia A, luego la Historia B, luego la Historia C, por separado.
- El Defecto: La Historia A podría funcionar, y la Historia B podría funcionar, pero si haces A luego B, el sistema podría fallar. Las historias tradicionales a menudo pasan por alto estos errores de "apretón de manos".
- La Solución PICKLES: La herramienta toma todas tus historias separadas y las une en un solo "Mapa Maestro" gigante. Determina cómo se conecta la Historia A con la Historia B, y cómo la Historia B se conecta con la Historia C. Crea una imagen completa de cómo se comporta el sistema a lo largo del tiempo, no solo en momentos aislados.
4. La "Retrotraducción" (Resultados Legibles)
Esta es la parte más ingeniosa. La herramienta utiliza el Mapa Maestro para generar automáticamente cientos de casos de prueba específicos.
- Por lo general, estas pruebas saldrían como código matemático confuso.
- PICKLES toma esos resultados matemáticos y los traduce de nuevo a historias en inglés.
- Así, el probador recibe un informe que dice: "Aquí hay una prueba específica donde el coche iba a 50 mph y el semáforo se puso en rojo a los 2.5 segundos. El coche se detuvo correctamente."
- El humano puede leerlo, entenderlo y verificarlo, aunque el trabajo pesado lo haya realizado el motor matemático.
La Prueba del Mundo Real (El Sistema de Tráfico)
Los autores probaron esto en un sistema real de gestión de tráfico utilizado por una empresa llamada Technolution.
- La Configuración: Tomaron historias existentes sobre sensores de tráfico detectando detectores rotos.
- El Resultado:
- Usando el antiguo método del "Narrador" (ejecutando historias una por una), solo probaron aproximadamente el 30% de los comportamientos posibles del sistema.
- Usando PICKLES (combinando las historias y utilizando el motor matemático), lograron una cobertura del 100% de la lógica del sistema.
- Lo hicieron sin escribir cientos de historias nuevas. Solo hicieron que las historias originales fueran "más inteligentes" añadiendo variables (como "cualquier carril" o "cualquier posición") y dejaron que la herramienta hiciera el resto.
Por Qué Esto Importa
PICKLES permite que personas no técnicas (como gerentes de proyecto o analistas de negocios) escriban requisitos en inglés plano que son inequívocos y matemáticamente rigurosos. Asegura que:
- Nadie esté confundido: Los requisitos son claros para todos.
- Ningún error esté oculto: El motor matemático encuentra casos límite que los humanos podrían pasar por alto.
- Menos trabajo: Escribes menos historias para probar más escenarios.
En resumen, PICKLES es como darle a un robot un libro de cuentos lo suficientemente inteligente como para entender cada posible variación de la historia, resolver los problemas matemáticos dentro de él y luego escribir un informe claro de vuelta a ti en inglés plano.
¿Ahogado en artículos de tu campo?
Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.