Páginas

26/1/15

JUnit assume

JUnit assume. Tipos de assumptions.

JUnit assume. Tipos de assumptions.




JUnit Assume Tutorial. JUnit assume que es?? Este poderoso framework para hacer pruebas unitarias aparte de los metodos assertions(Afirmaciones), posee los metodos de assumptions(Supuestos) que sirven para hacer las pruebas unitarias un poco mas fuertes. Supongamos que escribimos nuestro test y antes de hacer el assert queremos asumir que un objeto tiene el valor que nosotros creemos que tendra para llevar a cabo la prueba, ahora si el objeto no tiene el valor que estamos asumiendo la prueba falla lanzando la excepcion AssumptionViolatedException, el hecho de que un supuesto assume falle no quiere decir que todo el test esta malo pero si nos permite hacer las pruebas unitarias un poco mas fuertes, así no tenemos que ejecutar todo el test para saber si pasa o no la prueba. A continuación te presento un ejemplo:

16/1/15

JUnit assert

JUnit assert. Tipos de assertions.

JUnit assert. Tipos de assertions.





JUnit Assert Tutorial JUnit nos proporciona métodos en los cuales nosotros podemos hacer afirmaciones (Assertions), con estos métodos podemos afirmar tipos primitivos, objetos y arreglos. Estos métodos están conformados de esta manera, (Mensaje en caso de falla, valor esperado, valor real), en el valor real es en donde vamos a afirmar que un valor será el que nosotros creemos, hay que tomar en cuenta que algunos varían con valor esperado y valor real.
Un ejemplo de afirmación de una suma utilizando el método assertEquals se vería así:
assertEquals("El resultado esta mal: ", 1 + 1, 2);

En donde estamos afirmando que la operación (1 + 1) = 2.
Sigue este tutorial y veras todos los tipos de afirmaciones:

7/1/15

java.lang.NoClassDefFoundError JUnit Java

java.lang.NoClassDefFoundError JUnit Java

java.lang.NoClassDefFoundError JUnit Java



Caused by: java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory.
Caused by: java.lang.ClassNotFoundException: org.apache.juli.logging.LogFactory.

Cuando esto pasa es porque falta agregar la librería de tomcat a las propiedades del proyecto, puedes descargar esta versión tomcat-juli.jar y agregarla a las propiedades de tu proyecto en el cual estás haciendo tus pruebas unitarias con JUnit y asi solucionar esa excepción.

java.lang.ClassNotFoundException JUnit Java

java.lang.ClassNotFoundException JUnit Java

java.lang.ClassNotFoundException JUnit Java



Caused by: java.lang.ClassNotFoundException: org.apache.naming.java.javaURLContextFactory.

Cuando esto pasa es porque falta agregar la librería de catalina a las propiedades del proyecto, puedes descargar esta versión catalina-6.0.20.jar y agregarla a las propiedades de tu proyecto en el cual estás haciendo tus pruebas unitarias con JUnit y asi solucionar esa excepción.

javax.naming.NamingException JUnit Java

javax.naming.NamingException JUnit Java

javax.naming.NamingException JUnit Java




En este dato java estuve explicando paso a paso como utilizar por primera vez JUnit en eclipse/JBoss Developer Studio y nos quedamos en lo que pasaría cuando intentáramos hacer una prueba unitaria de una clase que hiciera una consulta a la base de datos mediante JNDI con Datasource. Al tratar de ejecutar esa prueba unitaria la aplicación nos lanza una excepción de tipo javax.naming.NamingException, ahora eso quiere decir que en algún momento a la hora de obtener la conexión a la base de datos mediante JNDI no puede cargar el Datasource ya que eso está configurado en el archivo de configuración del JBoss y como solo estamos haciendo una prueba unitaria de una clase dentro del mismo contenedor del JUnit y no del JBoss el no encuentra ese Datasource y lanza la excepción. Para resolver este inconveniente tenemos que inyectar el Datasource que vamos a usar al contenedor del JUnit siguiendo estos pasos.