Eclipse - Debugger Condicional - BreakPoint Condicional

Hola, generalmente para debuggear en eclipse, con el debugger y un breakpoint nos alcanza, pero algunas veces sucede que tenemos que entrar en un ciclo y debugear justo cuando el numero de la iteracion es X, siendo ese X un numero diferente al inicial, entonces recurrimos a escribir código. 
Por ejemplo:
Eclipse BreakPoint Condicional

En nuestro ejemplo cuando i = 9000, recién ahí verificamos que pasa el código.
El mayor problema al hacer esto es básicamente que tenemos que editar código, lo cual al momento de subirlo a producción tenemos que acordarnos de modificar el código.
Tenemos que bajar la aplicación y re compilar todo de nuevo, osea impactar el nuevo código.

Una solución muy sencilla que nos provee el eclipse es el debugger condicional.
Pasos a seguir:
1. Poner el punto de corte. El famoso breakpoint, si no te acordas como hacerlo podes pasarte por
acá.

2. Sobre el breakpoint hacemos un clic con el botón derecho, luego aparecerá un menú como el siguiente y finalmente presionamos sobre Breakpoint Properties.
Eclipse BreakPoint Condicional


3) Aparecerá una ventana como la siguiente:
Eclipse BreakPoint Condicional

Tildamos Enabled y Conditional.
4) La parte de abajo de la ventana nos permite escribir la condición. Ej:
Eclipse BreakPoint Condicional

5) Finalmente presionamos OK, y luego corremos el programa en modo debug! Y Wala!
El debugger se detiene en nuestra linea deseada.

NOTA:
 A) La condición a evaluar debe retornar un booleando, no hace falta poner el bloque if, la condición puede ser compleja usando los operadores && y ||.
 B) Se puede utilizar auto-completar la condición con Control + Barra (En la caja de texto).

 C) Si el flujo normal de la propiedad a evaluar puede ser nula, acordate de checkearla para evitar errores, por ejemplo    K!=null && K.equal("nombre") .

Cantidad de Vueltas.
Si quieres parar por la cantidad de vueltas (cantidad de veces que se pasar por donde se pone el punto de corte), dentro de las propiedades se puede seleciontar Hit Count e ingresar un numero.
Si se utiliza Conditional y Hit Cound, solo se entrara en el punto de debuger si se dan las dos condiciones juntas, es decir si son true ambas.


Value of Condition changes
Si quieres que solo se detenga cuando un valor o una expresión a cambiado selecciona: value of condition changes.
En este caso la condición no evalúa el resultado de manera booleana. Puedes evaluar una sola condición una expresión.

Los Breakpoint condicionales es solo código JAVA.
Los Breakpoint condicionales es solo código JAVA, por ejemplo con el alcance de restricciones y la posibilidad de errores de compilacion/runtime.  El alcance de la condición es el mismo que el los lugares donde se pone el breakpoing. así que podemos acceder a variables métodos  que son accesibles desde el lugar del breakpoing.

Saludos!

Fuente





Eclipse - Debugger Condicional - BreakPoint Condicional Eclipse - Debugger Condicional -  BreakPoint Condicional Reviewed by El lado oscuro de java on noviembre 04, 2013 Rating: 5

1 comentario:

Con la tecnología de Blogger.