No todo puede ser automatizado. Algunos productos o lenguajes de programación no tienen un marco para la automatización, por lo que escribir el marco primero puede ser demasiado costoso. Algunos sistemas o características de un sistema pueden cambiar con tanta frecuencia que, como se mencionó en la sección anterior, el costo de actualizar las pruebas anularía el costo de tener automatización en primer lugar.
Y en algunos casos, especialmente cuando se prueba una interfaz web, uno tiene que lidiar con la velocidad de la red y de Internet donde la prueba tendría demoras incorporadas para no fallar innecesariamente, en cuyo caso las pruebas automatizadas pueden tomar más tiempo que las pruebas. a mano.
Entonces, ¿cómo se determina si debe automatizar algo? Hay ciertas tareas, pruebas y situaciones en las que la automatización es la más beneficiosa. Éstos incluyen:
✅ Casos de prueba de unidad que se codifican y ejecutan fácilmente dentro de un marco de prueba
✅ Pruebas repetitivas que deben llevarse a cabo a menudo, como para cada nueva generación de controladores (utilizada como prueba de regresión)
✅ Pruebas que son tediosas y / o propensas a errores humanos, como verificar números u otros datos detallados (por ejemplo, punto decimal a 10 dígitos)
✅ Pruebas que deben ejecutarse muchas veces pero con datos diferentes o en hardware / software diferente
✅ Pruebas que no se pueden hacer manualmente, como simular 100 usuarios simultáneos en el sistema o ingresar 500 datos
✅ Pruebas que tomarían mucho tiempo y esfuerzo hacer manualmente, pero pueden automatizarse y volver a ejecutarse más fácilmente