• No se han encontrado resultados

Prueba unitaria de la clase Engine

In document Simulador de juego de lucha 1vs1 (página 122-126)

C. Manual para la maquetación de animaciones

C.4. Imagen de un escenario

7.2. Prueba unitaria de la clase Engine

jaime@jaime-Aspire-5740:~$ ./engine TestEngine::setUp : OK TestEngine::tearDown : OK TestEngine::initDosVeces : OK OK (3) La clase Animations

Ubicada en la carpeta test/animation, comprueba varios aspectos relacionados con el correcto funcionamiento de una animación, que se detallan a continuación:

Fichero action: Se comprueba si un fichero action está bien construido y no contiene errores.

Reproducción: Se comprueban aspectos relacionados con la reproducción de las diapo- sitivas de una animación.

Pruebas para colisiones:

Ubicada en la carpeta test/collision, el objetivo es conocer el comportamiento del algoritmo utilizado para las colisiones, en casos muy concretos, comprobando cómo responde el sistema a determinados comportamientos.

En la figura 7.1 se observan algunos de los comportamientos para el algoritmo, algunos de ellos son: si dos rectángulos que han colisionado colisionan, si dos rectángulos que no han colisio- nado no colisionan, si dos rectángulos cuyos puntos extremos estén pegados colisionan, si la colisión se produce si sus puntos están pisados, pero no son atravesados, por el otro rectángulo, etc.

Figura 7.1: Representación de los casos de prueba para las colisiones

7.2.

Pruebas unitarias manuales

Estas pruebas se han programado como órdenes, de manera que fuesen pruebas genéricas. Así un usuario puede crear sus propios casos de prueba para comprobar el buen funcionamiento de una imagen, reproducción de sonido o de una animación cargada en el sistema. Las pruebas aceptan el argumento -h a modo de ayuda para explicar su funcionamiento.

Pruebas para las imágenes:

Ubicada en la carpeta test/image y su sintaxis es ./testImage ruta_imagen. El objetivo es que el usuario pueda observar el comportamiento correcto de una imagen cargada en el sistema.

Pruebas para el sonido:

Ubicada en la carpeta test/sound y acepta como argumento la ruta de un fichero de audio o la ruta de un fichero sfx. En esta prueba comprueba la correcta reproducción de sonidos a partir del nombre de una pista o fichero sfx. El usuario debe comprobar si se escuchan los sonidos.

Pruebas para las fuentes de texto

Ubicada en la carpeta test/font y su sintaxis es ./testFont texto ruta_fuente tamaño color, el tipo de fichero usado para las fuentes de texto es TTF. El objetivo es observar el comportamiento correcto de una fuente cargada en el simulador, en donde se muestran distin- tos mensajes escritos en texto que el usuario debe comprobar si se visualizan correctamente.

Pruebas para un Sprite o Animación

Ubicada en la carpeta test/sprite y su sintaxis es ./testSprite ruta nombre, a partir del nombre del sprite, en la ruta indicada, busca y carga una imagen y un fichero action. El objetivo es observar el comportamiento correcto de una animación cargada en el simulador, donde se muestra, uno a uno, cada visualización de todas y cada una de las diapositivas de un animación.

Pruebas para el luchador:

Ubicada en la carpeta test/fighter y su sintaxis es ./testFighter ruta nombre, a partir del nombre del luchador, en la ruta indicada, busca y carga un luchador en el sistema. El objetivo es observar el comportamiento correcto de una luchador cargado en el simulador, donde se muestra, uno a uno, cada visualización de todos y cada una de los movimientos de un luchador.

7.3.

Pruebas de integración

El combate:

Ubicada en la carpeta test/combat y su sintaxis es ./combat luchador1 tipoLuchador luchador2 tipoLuchador escenario, toma como argumento el nombre de los dos luchadores, además del tipo de luchador, y el nombre de un escenario.

Un luchador es capaz de golpear todos los tipos de golpes (patada, puñetazo) mediante todos los estados posibles de movimiento.

Un luchador avanza y colisiona contra su contrario, ambos luchadores se separan.

Un luchador salta y cae encima de su oponente, empujándolo o modificando su posición.

Un luchador es capaz de lanzar una magia mediante combinaciones de teclas.

Un luchador golpea a otro. Hay que comprobar si se contabiliza ese daño en la barra de vida.

Un luchador es capaz de agacharse y propinar una patada fuerte, haciendo que se caiga el oponente cuando es golpeado.

Un luchador es capaz de cubrirse y no recibir daño de su oponente.

Un luchador es capaz de realizar una llave a su oponente.

Si se ganan los asaltos mínimos termina el combate.

Elegir personaje:

Ubicada en la carpeta test/chooseFighter, toma como argumento un tipo de juego. En esta prueba se comprueba lo siguiente:

Todos los luchadores integrados en el simulador han sido cargados correctamente.

Se puede escoger un luchador y un escenario.

En el modo de selección Training se visualizan correctamente las magias de los luchado- res.

En el modo de selección Tournamentent se escogen hasta 8 luchadores.

El menú:

Ubicada en la carpeta test/mainMenu comprueba que el menú principal y el menú de opciones funcionan correctamente, comprobando lo siguiente:

Se puede navegar por el menú principal y el de opciones correctamente.

En el menú de opciones, las opciones cambiadas, afectan realmente al sistema.

Si se ha configurado correctamente un dispositivo.

7.4.

La ejecución de las pruebas

Para ejecutar las pruebas correctamente en la carpeta test existe un script llamado exe_test.pl escrito en el lenguaje de programación Perl y cuyo objetivo es compilar un caso de prueba concreto. El uso del comando es:

In document Simulador de juego de lucha 1vs1 (página 122-126)