domingo, 7 de junio de 2009

Aventuras con los videojuegos…

Déjenme decirles algo q aprendí en este trabajo, hay una herramienta q se llama phpunit (http://www.phpunit.de/) q sirve para hacer pruebas sobre el código q desarrollaste.

Como?, bueno es bien simple, eso es lo mejor d todo:
Primero creas una clase como a continuación:




















En este ejemplo voy a probar la clase My_Class, específicamente el método compare_number() q se encuentra definido dentro de My_Class.

La funcion setUp() es propia de testunit, y aquí es donde se crean los objetos q van a ser utilizados en las diferentes pruebas, yo lo veo como el constructor. Aquí es donde se crea el objeto d la clase My_Class.

Después definimos la función testCompare, phpunit identifica todas las funciones q inician con testAlgo, y las manda llamar automáticamente una por una, permitiendo hacer diferentes métodos para probar partes de la clase.

Dentro de la función testCompare se setea el ambiente para la prueba, en este caso, creo 2 variables conteniendo un numero en cada una, dichos números van a ser utilizados en el método a probar, llamado compare_number().

Phpunit tiene diferentes métodos q pueden recibir el resultado arrojado por el método probado, en este ejemplo se esta utilizando $this->assertTrue(), el cual hará una aserción en caso d q el valor recibido por esta función sea verdadero, si recibe un valor falso, mandara un mensaje a la pantalla avisando q la prueba Z en la línea X falló, se esperaba un valor verdadero y se recibió un valor falso.

De esta forma podemos automatizar muchas pruebas, facilitando el mantenimiento, además q cuando se hace un cambio, se corren todas las pruebas q ya corrían exitosamente y es una forma mas para detectar si el cambio impacto en algún otro lugar del programa.

Lógicamente, esto se puede complicar bastante conforme el seteo del ambiente a probar se hace mas y mas complicado, pero bueno, d algo les ha d servir, a nosotros nos ha hecho la vida mucho mas fácil y se los recomiendo bastante.

Espero q les sirva y nos seguimos leyendo…

1 comentario:

Evil09 dijo...

Oye esta genial esa cosa :) , me cae que si le podre dar uso jejeje

Cualquier cosa te voy a contactar, apropósito sigo displonible para testear los juegos tu nomas dime XD..


Salu2