¿Cuál debería ser el perfil de un probador ágil?

El rol de probador de hoy es más versátil y requiere una amplia gama de habilidades. Ahora los evaluadores tienen tareas durante el sprint y también programan, ¡sí! – Como programadores regulares. (No digo como desarrolladores, ya que todos los participantes en el equipo son parte del desarrollo: el analista de negocios (BA), el diseñador, el probador, el escritor de tecnología y los programadores). Los probadores no necesitan ser especialistas en cualquier idioma; cuantos más idiomas sepan, mejores serán las soluciones que encontrarán. Un buen ingeniero en pruebas debería poder adaptar su conocimiento de acuerdo a las necesidades.

Así que examinemos en mayor profundidad los probadores que trabajan en equipo y su distribución de tareas a lo largo del sprint. (Este proceso localiza las tareas del probador, aunque podrían faltar tareas para otros roles).

En un método ágil, podríamos tener sprints anteriores, actuales y siguientes. Nuestro probador tendrá tareas relacionadas con cada una de estas etapas.

Tareas del probador

Sea parte de la reunión de planificación para el sprint actual. El probador estará a cargo de proporcionar estimaciones sobre la creación de datos, casos de prueba / diseño de prueba de aceptación, ejecución de prueba, diseño / mejoras de marcos, tareas de scripting, entornos de configuración, etc.

Sea parte de la reunión de planificación para el próximo sprint. El probador necesita validar si creará entornos complejos o cualquier mejora importante para el marco de automatización, antes de comenzar el próximo sprint.

Escriba los criterios de aceptación para cada artículo para el próximo sprint. Los evaluadores crean criterios de aceptación para las historias de los usuarios para el próximo sprint, ayudando al BA (si el equipo incluye BA) al dar sugerencias desde una perspectiva de control de calidad con respecto a los estándares, la experiencia del usuario, los posibles problemas de rendimiento y los errores futuros. Dependiendo de lo ágiles que seamos, tendremos criterios de aceptación y / o algunos casos de prueba (esto también dependerá de la compañía, ya que a veces es necesario mostrar alguna evidencia sobre la ejecución como casos de prueba). La creación de criterios de aceptación puede ser una tarea muy creativa, pero debemos validar lo posible que sean y si estamos en la misma página que el PO, por lo que podría ser necesaria la validación del equipo.

Actualice los criterios de aceptación de acuerdo con los comentarios de PO y cree casos de prueba para el próximo sprint. Una vez que recibimos comentarios del equipo, actualizamos los criterios de aceptación y comenzamos a crear casos de prueba (o pruebas de aceptación si estamos trabajando con interfaces de programación de aplicaciones o API).

Automatizar API (sprint actual). Si la aplicación se divide en niveles, tendremos API o servicios. Podríamos comenzar a programar antes de que los programadores terminen de codificar para el sprint actual. Al principio, todas nuestras pruebas fallarán, pero gradualmente a medida que los programadores terminen su trabajo, nuestra suite pasará. Automatizarlos es más fácil que automatizar las interfaces de usuario, y también son más fáciles de mantener. La automatización se puede lograr utilizando herramientas como SoapUI, Jmeter, etc.

Ejecute los criterios de aceptación manualmente (sprint actual). Los casos de prueba deben ejecutarse manualmente al menos una vez cuando se completa cada historia de usuario. La verificación manual nos dará un conjunto de errores, una idea sobre las limitaciones y la importancia de un caso de prueba. Por otro lado, esta práctica determinará los candidatos de automatización para el próximo sprint.

Automatizar la prueba de humo UI / regresiones (sprint anterior). Automatizar la interfaz de usuario una vez que la aplicación es estable podría ayudarlo a evitar muchos dolores de cabeza. En esta etapa, comenzaremos a automatizar la prueba de humo para las características actuales realizadas o regresiones para módulos complejos. En futuras iteraciones actualizaremos la prueba de humo, agregando las nuevas funciones.

Prueba exploratoria. Este tipo de prueba encontrará errores que ninguna prueba automática encontrará. No hay nada que se compare con la creatividad del probador, y debemos aplicar este tipo de pruebas una vez cada sprint.

Sea parte de la reunión de revisión para el sprint actual. Los probadores o el BA podrían dirigir la demostración interna / externa. ¡El objetivo es mostrar compromiso con el sprint actual, e idealmente no deberíamos mostrar ningún problema en vivo! Por lo tanto, un probador podría elegir el camino más seguro y señalar también los problemas conocidos: una diapositiva adicional podría ser suficiente. (Los probadores y el BA hablan lenguaje humano, mientras que los programadores no lo hacen, según la creencia popular …)

Sé parte de la reunión retrospectiva del sprint actual. En esta reunión, todos participarán, identificando cosas bien hechas, cosas para mejorar y acciones para aplicar.

Algunos de los marcos no reconocen al probador como un rol separado.

El probador como el papel se ha vuelto versátil. Un probador debe tener un conjunto de habilidades en forma de T con sabores de desarrollo (automatización de pruebas) y análisis de negocios (requisito como especificación). Con el aumento de la automatización, los evaluadores necesitan aprender nuevos trucos de forma regular a medida que los desarrolladores aprenden sobre las tecnologías.

Autor: El Manifiesto Ágil en inglés

Blog: Agile, Scrum, Kanban, Arquitectura, …

Twitter: @tjain

A juzgar por la experiencia, es mejor buscar a alguien que sea muy bueno en las pruebas exploratorias.

En general, en equipos y proyectos ágiles, los desarrolladores escriben pruebas automatizadas para la funcionalidad principal que están desarrollando para satisfacer las historias de los usuarios. Esto deja muchos errores sin ser detectados ya que el enfoque es limitado y principalmente en la unidad / integración / pruebas de extremo a extremo.

El probador ágil muestra que vale la pena cuando son buenos para encontrar los errores que los desarrolladores nunca tienen una oportunidad razonable de encontrar.

Contrata y dispara rápido hasta que encuentres un buen probador, ya que cuando lo hagas será muy obvio.

Buena suerte

Oliver Doan

Ese es un término muy extraño: “probador ágil”. Si su equipo ágil tiene personas designadas para ser desarrolladores y probadores, entonces es necesario cuestionar eso.

More Interesting

¿Qué son los patrones de comprensión y cómo se relacionan con el diagrama de secuencia?

¿Estoy cometiendo un error al no informar a ninguno de mis profesores de CS sobre mi próxima muestra de codificación de Google (prueba en línea)?

¿Por qué es necesario mantener actualizado su software de seguridad?

¿Cómo ven las personas los cambios en la interfaz de usuario cuando su entorno de desarrollo está en la nube?

Teniendo en cuenta el futuro de Li-Fi y Google Loon, ¿cuál cree que es el futuro del software de aplicación? ¿Web, nativo, híbrido o algo más?

¿Hay algo que ganar al hacer un software intencionalmente complejo y técnico?

¿Por qué es más difícil contratar desarrolladores que otros puestos?

Cómo instalar el sistema operativo Android en un teléfono con Windows (8.1 o 8.0)

¿Es 'no hay documentación mínima' un mito en Scrum? ¿Realmente podemos entregar proyectos sin una cantidad suficiente de documentación para auditorías y referencias futuras?

¿Cuáles son algunos ejemplos de Node.js a escala?

Desarrollé un motor de base de datos en el trabajo y entiendo bien los conceptos básicos, como los árboles B y la integridad transaccional. ¿Cuál sería un buen libro sobre los temas avanzados, como los tipos de índice poco comunes y las técnicas para indexar el lenguaje natural?

¿Es la edición de captura de pantalla una buena idea para un proyecto de ingeniería de software de último año?

¿Cómo pasan los profesionales de TI en Banglore su tiempo libre y los fines de semana (no soy realmente un tipo fiestero. Me interesan cualquier tipo de actividades deportivas)?

¿Sería atípico que a un desarrollador estadounidense se le ofrezca un puesto como ingeniero de software en el Reino Unido y reciba un estipendio adicional de mudanza?

¿Por qué el software ha visto menos progreso que el hardware en los últimos 50 años?