Estamos integrando un proceso de prueba en nuestro proceso SCRUM. Mi nuevo rol es escribir pruebas de aceptación de nuestras aplicaciones web para automatizarlas más tarde. He leído mucho sobre cómo se deben escribir los casos de prueba, pero ninguno me dio consejos prácticos para escribir casos de prueba para aplicaciones web complejas, y en su lugar arrojaron principios contradictorios que me resultaron difíciles de aplicar:
Los casos de prueba deben ser cortos: Tome el ejemplo de un CMS. Los casos de prueba cortos son fáciles de mantener e identificar las entradas y salidas. Pero, ¿qué sucede si deseo probar una larga serie de operaciones (por ejemplo, agregar un documento, enviar una notificación a otro usuario, el otro usuario responde, el documento cambia de estado, el usuario recibe un aviso)? Me parece que los casos de prueba deberían representar escenarios completos. Pero puedo ver cómo esto producirá documentos de prueba abiertamente complejos.
Las pruebas deben identificar entradas y salidas: : ¿Qué pasa si tengo un formulario largo con muchos campos que interactúan, con diferentes comportamientos? ¿Escribo una prueba para todo o una para cada una?
Los casos de prueba deben ser independientes: ¿Cómo puedo aplicar eso si la operación de carga requiere que la operación de conexión sea exitosa? ¿Y cómo se aplica a la escritura de casos de prueba? ¿Debo escribir una prueba para cada operación, pero cada prueba declara sus dependencias, o debo reescribir todo el escenario para cada prueba?
Los casos de prueba deben estar ligeramente documentados: Este principio es específico de los proyectos Agile. Entonces, ¿tienes algún consejo sobre cómo implementar este principio?
Aunque pensé que escribir los casos de prueba de aceptación iba a ser simple, me sentí abrumado por cada decisión que tenía que tomar (FYI: soy un desarrollador y no un evaluador profesional). Entonces, mi pregunta principal es: ¿Qué pasos o consejos tiene para escribir casos de prueba de aceptación para aplicaciones complejas? Gracias.
Editar : para aclarar mi pregunta: soy consciente de que las pruebas de aceptación deben comenzar desde el requisito y considerar la aplicación completa como una caja negra. Mi pregunta se relaciona con los pasos prácticos para escribir el documento de prueba, identificar los casos de prueba, lidiar con las dependencias entre pruebas ... para aplicaciones web complejas