0 votos
He terminando un aplicativo pero durante su desarrollo no hice las pruebas con @test, Es tarde para hacer estas pruebas? En este momento se convertiría en un proceso muy dispendioso y costoso?

Gracias por su valiosa colaboración.
preguntado por Martha Lancheros Oct 1, 2017 en Lenguajes de programación

1 Respuesta

+1 voto
Los test se puede decir el dicho que "más tarde que nunca".

Hacerlos en producción no es recomendable, pues es introducir más código que podría fallar. Dependiendo del equipo serán necesario en desarrollo (se encargan de hacerlo los programadores que desarrollaron el código) o en postdesarrollo (se encargan de hacerlos un equipo de calidad del software).

Personalmente como programador (y sabiendo que se hacen pocos o no se hacen por las prisas de las entregas, y porque el "cliente" los percibe como de escaso valor aunque no sea así), recomiendo hacerlos durante el desarrollo sobre todo para métodos complejos, cuyos cambios puedan verse muy afectados.

Hacer los test después del desarrollo y sin haberlos pensado previamente será más costoso que de haberlos hecho en su momento. Costoso porque hay que hacer test a código antiguo que ya no se recuerdan los rangos de valores de las variables admitidos (de haber hecho los test en su momento hubiera sido más sencillo con diferencia y ayudaría a conocer los valores mínimos y máximos admitidos; y ya si se hacen test de rendimiento, conocer tiempos de respuesta).

Lo ideal es hacer los test desde la base del programa y hacia arriba. Es decir, desde los métodos más simples a los más complejos (que dependen de los simples). Por ejemplo, si tenemos un método "suma(numA, numB)", probar que funcione con varios valores aleatorios pero fijos (es decir, que puedo elegir numA=48 y numB=2012, estos han de funcionar y dar de resultado 2060; sin utilizar random), así como el máximo y el mínimo (ver si aguanta números de tipo -999999999 o 99999999, o los maxint y minint que suelen tener todos los lenguajes de programación); luego escalar a los métodos que utilicen "suma(numA, numB)", como por ejemplo "multiplica(numD, numE)".
respondido por Ramon [Admin] Oct 28, 2017