Sei sulla pagina 1di 24

Buen comportamiento de los objetos

Pruebas

4.0

Principales conceptos que se tratarn


Pruebas Depuracin Automatizacin de pruebas Escribir para el mantenimiento

Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

Fragmento de cdigo del da


prueba public void () { int suma = 1; for (int i = 0; i <= 4; i + +); { suma = suma + 1; } System.out.println ("El resultado es:" suma +); System.out.println ("doble resultado:" + sum sum +); }

Cul es la salida?

Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

Resultados
El resultado es: 5 El resultado es: 6 El resultado es: 11

Cul es impreso?

El resultado es: 2

El resultado es: 6 Doble resultado: 12 Doble resultado: 66


Doble Resultado: 4 Doble resultado: 22

Doble resultado: 66

Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

Tenemos que lidiar con los errores


Errores iniciales son generalmente los errores de sintaxis.
El compilador se dar cuenta de los mismos.

Ms tarde, los errores son generalmente errores lgicos.


El compilador no puede ayudar con esto. Tambin conocido como bichos.

Algunos errores lgicos no tienen manifestacin inmediatamente obvia.


El software comercial es raramente libre de Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael errores. Klling
5

Prevencin vs Deteccin
(Desarrollador vs Mantenedor)
Podemos reducir la probabilidad de errores.
Utilizar tcnicas de ingeniera de software, como la encapsulacin.

Podemos mejorar las posibilidades de deteccin.


Utilizar prcticas de ingeniera de software, como la modularizacin y la documentacin.

Podemos desarrollar habilidades de deteccin.


Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

Probar y depurar
Estas son habilidades cruciales. Prueba de bsquedas para la presencia de errores. Depuracin de las bsquedas de la fuente de errores.
La manifestacin de un error bien puede ocurrir algo de "distancia" de su fuente.

Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

Probar y depurar las tcnicas


Prueba de la unidad (a menos de BlueJ) Automatizacin de pruebas Tutoriales manuales Instrucciones de impresin Depuradores

Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

Prueba de unidad
Cada unidad de una aplicacin puede ser probado.
Mtodo de la clase, mdulo (paquete de Java).

Se puede (debe) llevar a cabo durante el desarrollo.


Encontrar y corregir los costos de desarrollo iniciales disminuye (por ejemplo, tiempo programador). Una serie de pruebas se construye.

Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

Fundamentos de prueba
Entender lo que el equipo debe hacer - su contrato.
Se le busca por violacines. Utilizar pruebas positivas y pruebas negativas.

Prueba lmites.
Cero, uno, completa. Buscar una coleccin vaca. Agregar a una coleccin completa.

Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

10

Buen comportamiento de los objetos


Automatizacin de pruebas

Principales conceptos que se tratarn


Prueba de unidad JUnit Pruebas de regresin Los casos de prueba Las clases de prueba Aseveraciones Accesorios

Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

12

Prueba de unidad en BlueJ


Los objetos de las clases individuales se pueden crear. Mtodos individuales pueden ser invocados. Inspectores de proporcionar una visin puesta al da del estado de un objeto. Explora a travs de la diario-prototipo proyecto.

Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

13

Automatizacin de pruebas
Buena prueba es un proceso creativo, pero ... ... pruebas exhaustivas consume tiempo y es repetitivo. Pruebas de regresin implica volver a ejecutar pruebas. El uso de un prueba de plataforma o prueba arns puede aliviar parte de la carga.
Las clases se escribe para realizar la prueba. Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael 14 Klling La creatividad se centr en la creacin de

Automatizacin de pruebas
Explora a travs de la diario de pruebas proyecto.
El anlisis de los resultados Humanos an se requieren.

Explora ms completa automatizacin a travs de la diario de los ensayos junit proyectos.


La intervencin slo es necesario si aparece un error.

Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

15

Ejemplo
Supongamos que un programa debe aceptar el precio de una naranja, el nmero de naranjas solicitados y generar el costo total.
El precio de una naranja, en peniques, ser menor que 100 El nmero de naranjas estar en el rango de 1 a 20 inclusive. Una salida adecuada debera resultar si ya sea la entrada de entrada no es vlida.
16

Usando los inspectores


Una vez que un objeto ha sido creado, el valor de la misma de los campos se pueden vigilar a travs del inspeccionar las instalaciones (acceso haciendo clic derecho sobre el objeto).

Es ms importante cuando las estructuras de datos se utilizan para comprobar su comportamiento cuando est vaco, as como cuando se llena.
17

Clase: Bill
Bill clase pblica { / / Variables de instancia precio int privado; cantidad int privado; / ** * Constructor de Bill clase * / Bill pblico (precio int, int cantidad) { / / Inicializar las variables de instancia this.price = precio; this.quantity = cantidad; } / ** * Mtodo para determinar el monto de la factura * * @ Return total de la factura * / pblico billTotal int () { if (precio (> 0) && (precio <100)) { if (cantidad (> 0) && (cantidad <21)) { volver cantidad precio *; } } volver -999; } }
18

Crear pruebas unitarias


Utilizar Crear Mtodo de Prueba para crear una serie de casos de prueba junto con los resultados esperados y se almacena como mtodos de ensayo dentro de la clase de prueba unitaria.

19

Caso de prueba
Esto implicar la creacin de uno o ms objetos de la clase se est probando. Estos aparecen como ejemplificaciones en los mtodos de ensayo respectivas.
testCase1 public void () { Bill bill1 = new Bill (1, 1); assertEquals (1, bill1.billTotal ()); }

La afirmacin se introduce como parte del proceso de grabacin.


Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

20

Ejecucin de pruebas
Pruebas individuales se pueden ejecutar desde el men de prueba de unidad:
Alternativamente todas las pruebas se pueden realizar mediante la seleccin de Testall.Los resultados se comparan con los resultados esperados e inform de su caso:

21

Accesorios
Para crear instancias de objetos requeridos por todas las pruebas Cumplida uso Objeto a Test Bench Fixture
SetUp()mtodo que se ejecuta antes de que cualquiera de los mtodos de ensayo. declara campos para cada instancia y invoca a los constructores correspondientes dentro SetUp()mtodo. objetos aparecen en el banco de objeto

Prueba Fixture para banco de objetos.


cargas de objetos sobre banco de SetUp().
22

Manifestacin

Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

23

JUnit
JUnit es un marco de pruebas Java Los casos de prueba son los mtodos que contienen pruebas Las clases de prueba contiene mtodos de prueba Aseveraciones se utilizan para hacer valer los resultados esperados mtodo Accesorios se utilizan para soportar mltiples pruebas 24

Primeros objetos con Java - Una introduccin prctica usando BlueJ, David J. Barnes, Michael Klling

Potrebbero piacerti anche