SlideShare una empresa de Scribd logo
Pruebas Unitarias
Junit
Grupo: DAM/DAW
Componente: Entorno de Desarrollo
Mª Del Carmen Sánchez Ruiz
Esta foto de Autor desconocido está bajo licencia
CC BY-SA-NC
Trabajando con pruebas unitarias
1.Definición: Verificación individual de módulos de código.
2.Objetivo: Asegurar funcionamiento correcto de cada módulo por
separado.
3.Ventajas:
1. Automatización de pruebas.
2. Detección instantánea de errores.
3. Mejora la calidad del software.
4.Consideraciones:
1. Requiere tiempo adicional de desarrollo.
2. Valorar según complejidad y tamaño del proyecto.
5.Beneficios a largo plazo:
1. Facilita mantenimiento y actualizaciones.
2. Asegura cumplimiento de requisitos incluso tras cambios.
Esta foto de Autor desconocido está
bajo licencia CC BY-SA-NC
Lo primero que debemos hacer es definir la clase de pruebas.
• Nomenclatura tests de Junit= agregar el sufijo Test al nombre de la clase probada.
• Nomenclatura del método dentro de la clase de prueba =un texto identificativo de lo que debería realizar
el método.
Todos los métodos de prueba tienen que estar anotados con @Test. Dentro del método de prueba se
utilizarán distintos asserts. Las aserciones permiten verificar el comportamiento. En caso de incumplir
dichas aserciones el método de prueba fallará identificando el error producido.
Un ejemplo podría ser el siguiente:
public class CalculadoraTest {
@Test
public void multiplicaPorCeroDebeRetornarCero() {
// Probamos la clase Calculadora
Calculadora calcTester = new Calculadora();
// asserts (condiciones que hacen pasar la prueba)
assertEquals(0, calcTester.multiplica(10, 0), "10 x 0 debe ser 0");
assertEquals(0, calcTester.multiplica(0, 10), "0 x 10 debe ser 0");
assertEquals(0, calcTester.multiplica(0, 0), "0 x 0 debe ser 0");
}
Estructura de un test en JUnit
Los métodos assert comparan el valor obtenido con el valor esperado, lanzando una
excepción si no son iguales. La siguiente tabla resume las más comunes, los parámetros entre
corchetes son opcionales.
Aserciones en JUnit
Método Descripción
assertTrue([mensaje], condición booleana) Comprueba que la condición sea verdadera.
assertFalse([mensaje], condición booleana) Comprueba que la condición sea falsa.
assertEquals([mensaje], valor esperado, valor actual)
Comprueba que dos valores sean iguales. Nota: en arrays
comprueba su referencia, no el contenido!)
assertSame([mensaje], valor esperado, valor actual) Comprueba que ambos parámetros sean el mismo objeto.
assertNotSame([mensaje], valor esperado, valor actual) Comprueba que ambos parámetros no sean el mismo objeto.
assertNull([mensaje], objeto) Comprueba que el objeto sea nulo.
assertNotNull([mensaje], objeto) Comprueba que el objeto no sea nulo.
fail([mensaje])
Hace que el método falle. Debería ser utilizado solo para comprobar
que una parte del código de test no se ejecute o para hacer fallar un
test no implementado.
Definiendo test en JUnit
Un ejemplo genérico podría ser el siguiente:
public class pruebaTest {
@BeforeClass
public static void setUpClass() throws Exception {
// Tareas a realizar antes de ejecutar todos los tests
}
@AfterClass
public static void tearDownClass() throws Exception {
// Tareas a realizar después de ejecutar todos los
tests
}
@Before
public void setUp() {
// Tareas a realizar antes de cada test
}
}
@Test
public void comprobarAccionYResultado() {
// Creamos el entorno necesario para la prueba
// Ejecutamos el método a probar
// Usamos las aserciones para realizar la
comprobación
}
public void funcionAuxiliar() {
// Tareas auxiliares
}
@After
public void tearDown() {
// Tareas a realizar después de cada test
1. Empezaremos creando la clase que queremos probar. Tendrá el siguiente
código:
public class Suma {
private int num1;
private int num2;
public Suma(int n1, int n2) {
num1 = n1;
num2 = n2;
}
public int sumar() {
int resultado = num1 + num2;
return resultado;
}
}
Primer Paso Primer Paso
Testing
Método
Resultados
Discusión
Implicaciones
prácticas
Futuro
Testing
Queremos saber si la suma se hace correctamente en tres casos: sumando dos
números positivos, sumando dos números negativos y sumando un número positivo y
un número negativo. El código será el siguiente:
public class SumaTest {
}
Introducción
Testing
Vista junit
Resultados
Discusión
Implicaciones
prácticas
Futuro
@Test
public void
sumaPositivos() {
System.out.println("Su
mando dos números
positivos ...");
Suma S = new
Suma(2, 3);
assertTrue(S.sumar()
== 5);
}
@Test public void
sumaNegativos() {
System.out.println("Su
mando dos números
negativos ...");
Suma S = new
Suma(-2, -3);
assertTrue(S.sum
ar() == -5); }
@Test
public void
sumaPositivoNegativo(
) {
System.out.println("Su
mando un número
positivo y un número
negativo ...");
Suma S = new
Suma(2, -3);
assertTrue(S.sumar()
== -1);
}
}
Testing
Introducción
Testing
Vista junit
Resultados
Discusión
Implicaciones
prácticas
Futuro
Vista Junit
Introducción
Testing
Vista Junit
Activamos la vista “JUnit” en Eclipse. Para
ello hay que pulsar en: “Window”; “Show
View”; “Other...”; “Java”; “JUnit”.
Ejecutar
Introducción
Testing
Vista Junit
Ejecutar
Y ejecutamos el proyecto como test JUnit, pulsando sobre el proyecto con el
botón derecho, luego pulsamos “Run as” y finalmente “JUnit Test”.
Ahora podremos ver los resultados. Si todo ha ido bien, en la vista JUnit nos
aparecerá ésto:
Gracias

Más contenido relacionado

Similar a pruebas unitarias unitarias en java con JUNIT

Testeo unitario
Testeo unitarioTesteo unitario
Testeo unitario
Atahualpa Acosta
 
Qunit CookBook español
Qunit CookBook españolQunit CookBook español
Qunit CookBook español
shadow_of__soul
 
Pruebas Automatizadas
Pruebas AutomatizadasPruebas Automatizadas
Pruebas Automatizadas
Angel Nuñez
 
S9-DAW-2022S1.pptx
S9-DAW-2022S1.pptxS9-DAW-2022S1.pptx
S9-DAW-2022S1.pptx
Luis Fernando Aguas Bucheli
 
Informe 21
Informe 21Informe 21
Informe 21
Isidro Reinoso
 
Informe 21
Informe 21Informe 21
Informe 21
Santiago Reinoso
 
U7.resumen.ANALISIS DE LOS ALGORITMOS
U7.resumen.ANALISIS DE LOS ALGORITMOSU7.resumen.ANALISIS DE LOS ALGORITMOS
U7.resumen.ANALISIS DE LOS ALGORITMOS
LuiS YmAY
 
Prueba software orientado a objetos
Prueba software orientado a objetosPrueba software orientado a objetos
Prueba software orientado a objetos
Irene Quiñones Osorio
 
Calidad del software cap3
Calidad del software   cap3Calidad del software   cap3
Calidad del software cap3
Julio C. Alsina A.
 
Programación básica
Programación básicaProgramación básica
Programación básica
Carlos Van de Velde
 
Unit Testing with Mock Objects
Unit Testing with Mock ObjectsUnit Testing with Mock Objects
Unit Testing with Mock Objects
Angel Nuñez
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de software
Antonio Elias Muñoz Espinoza
 
Unit Testing - Trovit
Unit Testing - TrovitUnit Testing - Trovit
Unit Testing - Trovit
Jordi Gerona
 
Mejorar la calidad de los tests con Mutation testing.pdf
Mejorar la calidad de los tests con Mutation testing.pdfMejorar la calidad de los tests con Mutation testing.pdf
Mejorar la calidad de los tests con Mutation testing.pdf
Ismail Ismailov
 
Informe#15
Informe#15Informe#15
Informe#15
paulcuenca9
 
Pruebas-OCW.pdf
Pruebas-OCW.pdfPruebas-OCW.pdf
Pruebas-OCW.pdf
lgarcias
 
Pruebas Unitarias1.pdf
Pruebas Unitarias1.pdfPruebas Unitarias1.pdf
Pruebas Unitarias1.pdf
SERGIO Ibañez
 
Diagramas De Flujo
Diagramas De FlujoDiagramas De Flujo
Diagramas De Flujo
carlospaul
 
Software testing 1
Software testing 1Software testing 1
Software testing 1
josodo
 
Test Automation .NET
Test Automation .NETTest Automation .NET
Test Automation .NET
Angel Nuñez
 

Similar a pruebas unitarias unitarias en java con JUNIT (20)

Testeo unitario
Testeo unitarioTesteo unitario
Testeo unitario
 
Qunit CookBook español
Qunit CookBook españolQunit CookBook español
Qunit CookBook español
 
Pruebas Automatizadas
Pruebas AutomatizadasPruebas Automatizadas
Pruebas Automatizadas
 
S9-DAW-2022S1.pptx
S9-DAW-2022S1.pptxS9-DAW-2022S1.pptx
S9-DAW-2022S1.pptx
 
Informe 21
Informe 21Informe 21
Informe 21
 
Informe 21
Informe 21Informe 21
Informe 21
 
U7.resumen.ANALISIS DE LOS ALGORITMOS
U7.resumen.ANALISIS DE LOS ALGORITMOSU7.resumen.ANALISIS DE LOS ALGORITMOS
U7.resumen.ANALISIS DE LOS ALGORITMOS
 
Prueba software orientado a objetos
Prueba software orientado a objetosPrueba software orientado a objetos
Prueba software orientado a objetos
 
Calidad del software cap3
Calidad del software   cap3Calidad del software   cap3
Calidad del software cap3
 
Programación básica
Programación básicaProgramación básica
Programación básica
 
Unit Testing with Mock Objects
Unit Testing with Mock ObjectsUnit Testing with Mock Objects
Unit Testing with Mock Objects
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de software
 
Unit Testing - Trovit
Unit Testing - TrovitUnit Testing - Trovit
Unit Testing - Trovit
 
Mejorar la calidad de los tests con Mutation testing.pdf
Mejorar la calidad de los tests con Mutation testing.pdfMejorar la calidad de los tests con Mutation testing.pdf
Mejorar la calidad de los tests con Mutation testing.pdf
 
Informe#15
Informe#15Informe#15
Informe#15
 
Pruebas-OCW.pdf
Pruebas-OCW.pdfPruebas-OCW.pdf
Pruebas-OCW.pdf
 
Pruebas Unitarias1.pdf
Pruebas Unitarias1.pdfPruebas Unitarias1.pdf
Pruebas Unitarias1.pdf
 
Diagramas De Flujo
Diagramas De FlujoDiagramas De Flujo
Diagramas De Flujo
 
Software testing 1
Software testing 1Software testing 1
Software testing 1
 
Test Automation .NET
Test Automation .NETTest Automation .NET
Test Automation .NET
 

Último

edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
larapalaciosmonzon28
 
625204013-64-Camino-a-----La-Lectura.pdf
625204013-64-Camino-a-----La-Lectura.pdf625204013-64-Camino-a-----La-Lectura.pdf
625204013-64-Camino-a-----La-Lectura.pdf
yuberpalma
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
gisellearanguren1
 
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
AbrahamCastillo42
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
doctorsoluciones34
 
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
AMADO SALVADOR
 
Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
larapalaciosmonzon28
 
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIAMONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
leia ereni
 
Inteligencia Artificial
Inteligencia ArtificialInteligencia Artificial
Inteligencia Artificial
YashiraPaye
 
Second Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro TapiaSecond Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro Tapia
al050121024
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
giampierdiaz5
 
Programming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdfProgramming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdf
Manuel Diaz
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
MiguelAtencio10
 
El uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptxEl uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptx
jgvanessa23
 
La Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docxLa Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docx
luiscohailatenazoa0
 
INFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIAINFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIA
renzocruz180310
 
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdfPLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
70244530
 
El uso de las TIC por Cecilia Pozos S..pptx
El uso de las TIC  por Cecilia Pozos S..pptxEl uso de las TIC  por Cecilia Pozos S..pptx
El uso de las TIC por Cecilia Pozos S..pptx
cecypozos703
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
NicandroMartinez2
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
mantenimientocarbra6
 

Último (20)

edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
 
625204013-64-Camino-a-----La-Lectura.pdf
625204013-64-Camino-a-----La-Lectura.pdf625204013-64-Camino-a-----La-Lectura.pdf
625204013-64-Camino-a-----La-Lectura.pdf
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
 
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
 
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
 
Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
 
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIAMONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
 
Inteligencia Artificial
Inteligencia ArtificialInteligencia Artificial
Inteligencia Artificial
 
Second Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro TapiaSecond Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro Tapia
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
 
Programming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdfProgramming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdf
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
 
El uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptxEl uso de las TIC en la vida cotidiana.pptx
El uso de las TIC en la vida cotidiana.pptx
 
La Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docxLa Inteligencia Artificial en la actualidad.docx
La Inteligencia Artificial en la actualidad.docx
 
INFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIAINFORMATICA Y TECNOLOGIA
INFORMATICA Y TECNOLOGIA
 
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdfPLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
PLAN DE MANTENMIENTO preventivo de un equipo de computo.pdf
 
El uso de las TIC por Cecilia Pozos S..pptx
El uso de las TIC  por Cecilia Pozos S..pptxEl uso de las TIC  por Cecilia Pozos S..pptx
El uso de las TIC por Cecilia Pozos S..pptx
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
 

pruebas unitarias unitarias en java con JUNIT

  • 1. Pruebas Unitarias Junit Grupo: DAM/DAW Componente: Entorno de Desarrollo Mª Del Carmen Sánchez Ruiz Esta foto de Autor desconocido está bajo licencia CC BY-SA-NC
  • 2. Trabajando con pruebas unitarias 1.Definición: Verificación individual de módulos de código. 2.Objetivo: Asegurar funcionamiento correcto de cada módulo por separado. 3.Ventajas: 1. Automatización de pruebas. 2. Detección instantánea de errores. 3. Mejora la calidad del software. 4.Consideraciones: 1. Requiere tiempo adicional de desarrollo. 2. Valorar según complejidad y tamaño del proyecto. 5.Beneficios a largo plazo: 1. Facilita mantenimiento y actualizaciones. 2. Asegura cumplimiento de requisitos incluso tras cambios. Esta foto de Autor desconocido está bajo licencia CC BY-SA-NC
  • 3. Lo primero que debemos hacer es definir la clase de pruebas. • Nomenclatura tests de Junit= agregar el sufijo Test al nombre de la clase probada. • Nomenclatura del método dentro de la clase de prueba =un texto identificativo de lo que debería realizar el método. Todos los métodos de prueba tienen que estar anotados con @Test. Dentro del método de prueba se utilizarán distintos asserts. Las aserciones permiten verificar el comportamiento. En caso de incumplir dichas aserciones el método de prueba fallará identificando el error producido. Un ejemplo podría ser el siguiente: public class CalculadoraTest { @Test public void multiplicaPorCeroDebeRetornarCero() { // Probamos la clase Calculadora Calculadora calcTester = new Calculadora(); // asserts (condiciones que hacen pasar la prueba) assertEquals(0, calcTester.multiplica(10, 0), "10 x 0 debe ser 0"); assertEquals(0, calcTester.multiplica(0, 10), "0 x 10 debe ser 0"); assertEquals(0, calcTester.multiplica(0, 0), "0 x 0 debe ser 0"); } Estructura de un test en JUnit
  • 4. Los métodos assert comparan el valor obtenido con el valor esperado, lanzando una excepción si no son iguales. La siguiente tabla resume las más comunes, los parámetros entre corchetes son opcionales. Aserciones en JUnit Método Descripción assertTrue([mensaje], condición booleana) Comprueba que la condición sea verdadera. assertFalse([mensaje], condición booleana) Comprueba que la condición sea falsa. assertEquals([mensaje], valor esperado, valor actual) Comprueba que dos valores sean iguales. Nota: en arrays comprueba su referencia, no el contenido!) assertSame([mensaje], valor esperado, valor actual) Comprueba que ambos parámetros sean el mismo objeto. assertNotSame([mensaje], valor esperado, valor actual) Comprueba que ambos parámetros no sean el mismo objeto. assertNull([mensaje], objeto) Comprueba que el objeto sea nulo. assertNotNull([mensaje], objeto) Comprueba que el objeto no sea nulo. fail([mensaje]) Hace que el método falle. Debería ser utilizado solo para comprobar que una parte del código de test no se ejecute o para hacer fallar un test no implementado.
  • 5. Definiendo test en JUnit Un ejemplo genérico podría ser el siguiente: public class pruebaTest { @BeforeClass public static void setUpClass() throws Exception { // Tareas a realizar antes de ejecutar todos los tests } @AfterClass public static void tearDownClass() throws Exception { // Tareas a realizar después de ejecutar todos los tests } @Before public void setUp() { // Tareas a realizar antes de cada test } } @Test public void comprobarAccionYResultado() { // Creamos el entorno necesario para la prueba // Ejecutamos el método a probar // Usamos las aserciones para realizar la comprobación } public void funcionAuxiliar() { // Tareas auxiliares } @After public void tearDown() { // Tareas a realizar después de cada test
  • 6. 1. Empezaremos creando la clase que queremos probar. Tendrá el siguiente código: public class Suma { private int num1; private int num2; public Suma(int n1, int n2) { num1 = n1; num2 = n2; } public int sumar() { int resultado = num1 + num2; return resultado; } } Primer Paso Primer Paso Testing Método Resultados Discusión Implicaciones prácticas Futuro
  • 7. Testing Queremos saber si la suma se hace correctamente en tres casos: sumando dos números positivos, sumando dos números negativos y sumando un número positivo y un número negativo. El código será el siguiente: public class SumaTest { } Introducción Testing Vista junit Resultados Discusión Implicaciones prácticas Futuro @Test public void sumaPositivos() { System.out.println("Su mando dos números positivos ..."); Suma S = new Suma(2, 3); assertTrue(S.sumar() == 5); } @Test public void sumaNegativos() { System.out.println("Su mando dos números negativos ..."); Suma S = new Suma(-2, -3); assertTrue(S.sum ar() == -5); } @Test public void sumaPositivoNegativo( ) { System.out.println("Su mando un número positivo y un número negativo ..."); Suma S = new Suma(2, -3); assertTrue(S.sumar() == -1); } }
  • 9. Vista Junit Introducción Testing Vista Junit Activamos la vista “JUnit” en Eclipse. Para ello hay que pulsar en: “Window”; “Show View”; “Other...”; “Java”; “JUnit”.
  • 10. Ejecutar Introducción Testing Vista Junit Ejecutar Y ejecutamos el proyecto como test JUnit, pulsando sobre el proyecto con el botón derecho, luego pulsamos “Run as” y finalmente “JUnit Test”. Ahora podremos ver los resultados. Si todo ha ido bien, en la vista JUnit nos aparecerá ésto:

Notas del editor

  1. Motivación: El Super-docente sabe utilizar los retos tecnológicos como propulsor de la creatividad. Herramientas creativas: Utiliza herramientas novedosas, buscando formas creativas de realizar sus funciones para romper con la docencia tradicional. Colaboración: Fomenta el trabajo en equipo y el debate. Las ideas diversas y los distintos enfoques sobre un tema aumentan la creatividad. Experimentación: Sabe de la importancia de esta característica, de la creatividad, porque la tecnología y la ciencia se basa en experimentar. Resolución de problemas: La creatividad es un eje fundamental a la hora de solucionar problemas y saber salir de determinadas situaciones. Ayuda a abordar distintos desafíos en el aula de manera efectiva. Autoexpresión: La transmisión de la creatividad y las ideas de uno fomenta la autoestima. Es un buen ejemplo para el alumnado.
  2. Empatía cognitiva: La empatía cognitiva es una forma específica de empatía que implica la capacidad de entender y comprender los pensamientos, sentimientos y perspectivas de otra persona. Ayudará al docente a comprender cómo ve el mundo el alumno. Empatía emocional: Este tipo de empatía es la que nos ayuda a comprender y compartir las emociones de otra persona. Aunque no es necesario sentir lo mismo, sino sólo entender. Ayudará al docente a identificar cómo se siente el alumno y saber actuar en función de ello. Preocupación Empática: Es la preocupación por ayudar y por enseñar al resto a tener esa empatía. Es lo que mueve a crear espacios seguros y empáticos en el aula. Fomentar la inteligencia emocional.
  3. Empatía cognitiva: La empatía cognitiva es una forma específica de empatía que implica la capacidad de entender y comprender los pensamientos, sentimientos y perspectivas de otra persona. Ayudará al docente a comprender cómo ve el mundo el alumno. Empatía emocional: Este tipo de empatía es la que nos ayuda a comprender y compartir las emociones de otra persona. Aunque no es necesario sentir lo mismo, sino sólo entender. Ayudará al docente a identificar cómo se siente el alumno y saber actuar en función de ello. Preocupación Empática: Es la preocupación por ayudar y por enseñar al resto a tener esa empatía. Es lo que mueve a crear espacios seguros y empáticos en el aula. Fomentar la inteligencia emocional.
  4. Empatía cognitiva: La empatía cognitiva es una forma específica de empatía que implica la capacidad de entender y comprender los pensamientos, sentimientos y perspectivas de otra persona. Ayudará al docente a comprender cómo ve el mundo el alumno. Empatía emocional: Este tipo de empatía es la que nos ayuda a comprender y compartir las emociones de otra persona. Aunque no es necesario sentir lo mismo, sino sólo entender. Ayudará al docente a identificar cómo se siente el alumno y saber actuar en función de ello. Preocupación Empática: Es la preocupación por ayudar y por enseñar al resto a tener esa empatía. Es lo que mueve a crear espacios seguros y empáticos en el aula. Fomentar la inteligencia emocional.
  5. Empatía cognitiva: La empatía cognitiva es una forma específica de empatía que implica la capacidad de entender y comprender los pensamientos, sentimientos y perspectivas de otra persona. Ayudará al docente a comprender cómo ve el mundo el alumno. Empatía emocional: Este tipo de empatía es la que nos ayuda a comprender y compartir las emociones de otra persona. Aunque no es necesario sentir lo mismo, sino sólo entender. Ayudará al docente a identificar cómo se siente el alumno y saber actuar en función de ello. Preocupación Empática: Es la preocupación por ayudar y por enseñar al resto a tener esa empatía. Es lo que mueve a crear espacios seguros y empáticos en el aula. Fomentar la inteligencia emocional.