Tarea ENDES03
Tarea ENDES03
Tarea ENDES03
2020-2021
Jonathan Baltasar Jiménez
Enunciado.
En esta tarea se considera una clase Java CCuenta que dispone de los métodos main, ingresar y retirar.
Este es el código de los métodos main, ingresar y retir que deberás tener en cuenta para resolver la tarea:
Método main
public static void main(String[] args) {
// Depuracion. Se detiene siempre
CCuenta miCuenta = new CCuenta();
System.out.println("Saldo Incial: " + miCuenta.dSaldo + " euros");
// Depuracion. Provoca parada por ingreso con cantidad menor de 0
miCuenta.ingresar(-100);
System.out.println("Saldo Incial: " + miCuenta.dSaldo + " euros");
miCuenta.ingresar(100);
System.out.println("Saldo tras ingreso: " + miCuenta.dSaldo + " euros");
miCuenta.ingresar(200);
System.out.println("Saldo tras ingreso: " + miCuenta.dSaldo + " euros");
// Depuracion. Provoca parada con codicion de tercer ingreso
miCuenta.ingresar(300);
System.out.println("Saldo tras ingreso: " + miCuenta.dSaldo + " euros");
miCuenta.retirar(50);
System.out.println("Saldo tras retirada: " + miCuenta.dSaldo + " euros");
}
Método ingresar
public int ingresar(double cantidad)
int iCodErr;
if (cantidad < 0)
{
System.out.println("No se puede ingresar una cantidad negativa");
iCodErr = 1;
}
else if (cantidad == -3)
{
System.out.println("Error detectable en pruebas de caja blanca");
iCodErr = 2;
}
else
{
// Depuracion. Punto de parada. Solo en el 3 ingreso
dSaldo = dSaldo + cantidad;
iCodErr = 0;
}
// Depuracion. Punto de parada cuando la cantidad es menor de 0
return iCodErr;
}
Método retirar
public void retirar (double cantidad)
{
if (cantidad <= 0)
{
System.out.println("No se puede retirar una cantidad negativa");
}
else if (dSaldo < cantidad)
{
System.out.println("No se hay suficiente saldo");
}
else
{
}
}
1
Tarea ENDES03. 2020-2021
Jonathan Baltasar Jiménez
Camino 1 1, 2,y 6
Camino 2 1, 3, 4 y 6
Camino 3 1, 3, 5 y 6
2. Realiza un análisis de caja negra, incluyendo valores límite y conjetura de errores del método
retirar. Debes considerar que este método recibe como parámetro la cantidad a retirar, que no
podrá ser menor a 0. Además en ningún caso esta cantidad podrá ser mayor al saldo actual. Al
tratarse de pruebas funcionales no es necesario conocer los detalles del código pero te lo pasamos
para que lo tengas.
2
Tarea ENDES03. 2020-2021
Jonathan Baltasar Jiménez
3. Crea la clase CCuentaTest del tipo Caso de prueba JUnit en Eclipse que nos permita pasar las
pruebas unitarias de caja blanca del método ingresar. Los casos de prueba ya los habrás obtenido
en el primer apartado del ejercicio. Copia el código fuente de esta clase en el documento.
Punto de parada sin condición al crear el objeto miCuenta en la función main. Línea 3 del
código del método main que se presenta en la siguiente página de este libro.
Punto de parada en la instrucción return del método ingresar sólo si la cantidad a ingresar es
menor de 0. Línea 20 del código del método ingresar que se presenta más adelante.
Punto de parada en la instrucción donde se actualiza el saldo, sólo deberá parar la tercera vez
que sea actualizado. Línea 16 del código del método ingresar que se presenta más adelante.
Pulsando el botón derecho sobre la ventana de puntos de ruptura selecciona la opción "Exportar puntos de
ruptura". Seleccionas los tres puntos de ruptura generados y guardas el fichero. El fichero tendrá la extensión
bkpt, la cambias por txt. Ahora abres el fichero y copias el contenido íntegramente al documento.