Esquema o estrategia de prompt R-T-F

En la industria del software testing, específicamente en los contextos de testing manual y testing automatizado, el esquema R-T-F (Rol-Tarea-Formato) puede ser utilizado para mejorar la claridad y efectividad de las instrucciones que le damos a las GenAIs.

Formato

R-T-F: Define el rol, la tarea y el formato de la respuesta.

R-T-F: Rol Tarea Formato

Actúa como [ROL]
Crea una [TAREA]
Muestra como [FORMATO]

Importante

Algo importante de aclarar en este punto es que este tipo de esquemas o estrategias de prompts se pueden utilizar en cualquier GenAI (p.e. ChatGPT ó Gemini)

Este esquema se centra en definir tres componentes clave:

  1. Rol (R): Especifica el rol que debe asumir la IA. Esto proporciona un contexto específico desde el cual la IA debe generar la respuesta. Por ejemplo, «Actúa como un tester manual con conocimiento en lenguaje GHERKIN para escribir casos de prueba».

  2. Tarea (T): Indica claramente la tarea que se espera que realice la IA. Esto puede ser cualquier tipo de solicitud, como «Crea un test set que contenga 20 (veinte) casos de prueba en lenguaje GHERKIN atendiendo los criterios de aceptación de la historia de usuario para el sprint en curso».

  3. Formato (F): Define el formato en el cual se debe presentar la respuesta. Esto puede ser en forma de lista, párrafo, tabla, etc. Por ejemplo, «Muestra los 20(veinte) casos de prueba en formato de planilla que tenga la siguiente estructura: en la columna A, el título «Test Case», y en la columna B, el título «Test Set»; y en las filas siguientes los casos de prueba y el número de issue del Test Set».

Aquí te explico cómo se puede aplicar en cada contexto:

1. Testing Manual

En el testing manual, el esquema R-T-F se puede utilizar para estructurar las instrucciones que se le dan a los testers (humanos), asegurando que sigan un enfoque sistemático al realizar sus pruebas. Algunos ejemplos específicos de uso son:

  • Definición de Roles Claros para Pruebas Específicas: Se puede utilizar para definir el rol del tester según el tipo de prueba que debe realizar. Por ejemplo, «Actúa como un tester de usabilidad» o «Actúa como un tester de accesibilidad». Esto establece un contexto claro, ayudando a los testers a concentrarse en aspectos específicos del software que están evaluando.

  • Ejecución de Casos de Prueba Específicos: La tarea podría ser «Ejecutar pruebas de regresión» o «Realizar pruebas exploratorias». Al definir la tarea de manera precisa, se asegura que el tester sepa exactamente qué tipo de pruebas se espera que realice y en qué áreas del software debe enfocarse.

  • Formato de Reporte de Resultados: El formato de la respuesta podría especificar cómo deben ser presentados los resultados de las pruebas, como «Documenta las evidencias en un informe detallado según ISTQB» o «Muestra los resultados en una tabla con columnas para ‘Comportamiento esperado’, ‘Comportamiento real’, y ‘Observaciones'». Esto garantiza que los resultados se registren de manera uniforme y fácil de analizar.

2. Testing Automatizado

En el testing automatizado, el esquema R-T-F puede ser usado para definir claramente los scripts y procedimientos automatizados que se deben seguir. Algunos casos de uso incluyen:

  • Definición de Scripts Automatizados con Roles Específicos: Por ejemplo, «Actúa como un script de validación de datos». Esto ayuda a especificar el propósito del script, guiando a la IA o al tester automatizador a generar scripts que se enfoquen en validar datos específicos dentro del sistema.

  • Automatización de Tareas Específicas: La tarea podría ser «Automatizar pruebas de integración» o «Crear scripts para pruebas de carga». Definir la tarea claramente asegura que los scripts automatizados sean diseñados con el objetivo correcto en mente y cubran los escenarios necesarios.

  • Formato de Resultados Automatizados: El formato puede especificar cómo se deben presentar los resultados de las pruebas automatizadas, como «Genera un reporte en formato XML» o «Muestra los resultados en un dashboard interactivo». Esto asegura que los resultados sean fáciles de revisar e interpretar, tanto por testers humanos como por sistemas de análisis.

Aplicaciones Específicas en el Software Testing

  • Creación de Casos de Prueba Automatizados: En testing automatizado, R-T-F puede guiar la creación de casos de prueba automatizados al definir claramente el rol de cada script (e.g., «validador de interfaz de usuario»), la tarea que debe realizar (e.g., «verificar que los botones de navegación funcionen correctamente»), y el formato en que se debe registrar la salida (e.g., «como un log detallado en formato JSON»).

  • Documentación de Resultados de Pruebas Manuales: En testing manual, el esquema puede ser usado para estandarizar la documentación de los resultados. Por ejemplo, «Actúa como un tester ágil», «Realiza una prueba exploratoria en la nueva función de búsqueda», y «Documenta las evidencias en un formato de lista de verificación (check list)».

En resumen, el esquema R-T-F es valioso en el software testing para asegurar que tanto testers manuales como automatizadores tengan un enfoque claro y estructurado al realizar pruebas, mejorando la consistencia y efectividad de los resultados.

Propuesta

Seguime por LinkedIn donde también publico artículos y puedes interactuar con otros miembros dejando tus comentarios y si el contenido te parece útil, puedes dejarme Like y Compartir que me ayuda y mucho. Muchas gracias

Gus Terrera

Apasionado por el agile testing y la ia.