SlideShare una empresa de Scribd logo
1 de 9
9. Cierre
             JUnit y pruebas unitarias
             Examen




Programación III                   Tema 9 - Cierre
JUnit y pruebas unitarias

   • JUnit es un framework para desarrollar
     pruebas unitarias
           – Pruebas de una clase / módulo de código
           – Objetivo: aislar las partes y probar la corrección
             de cada una
           – Se podrán ejecutar de forma automática
   • JUnit es una herramienta gratuita
           – http://www.junit.org
           – Integrada con Eclipse, NetBeans y otros IDEs


Programación III                  Tema 9 - Cierre
¿Ganamos/perdemos
                     tiempo?
   • Es habitual la idea de que hacer JUnit's es
     una pérdida de tiempo
           – Pero es más una inversión
           – No sólo vale para prueba inicial sino
                   • seguir probando en la evolución del sistema
                   • permiten incorporar los bugs como nuevas pruebas
                   • de forma progresiva ("aprender de los errores")
   • ¡Merece la pena invertir el tiempo para luego
     recuperarlo!


Programación III                        Tema 9 - Cierre
Versión de JUnit

   • JUnit 3 utiliza código Java "habitual"
   • JUnit 4 utiliza anotaciones

   • En este resumen sólo hablaremos de JUnit 3




Programación III           Tema 9 - Cierre
Pasos a seguir
           – Importar JUnit:
                      – import junit.framework.TestCase;
           – Crear una clase que extienda TestCase
                   • Clase de pueba para una clase
           – Implementar método setUp()
                   • Inicialización de las pruebas
           – Implementar método tearDown()
                   • Si procede para liberar recursos (cerrar ficheros...)
           – Definir métodos de test: testXXX()
                   • Uno por cada método original (XXX = nombre)
           – Ejecución del caso de prueba
                   • Método run()
Programación III                           Tema 9 - Cierre
¿Qué hay en los tests?
           – Varios métodos que se pueden utilizar:
                   • testEquals( val1, val2 ) --> si no son equals, fallo
                   • testTrue( cond ) --> si no es cierta, fallo
                   • fail( mensaje ) --> si llega a ejecutarse es fallo
           – También aserciones:
                   • assertFalse( cond ), assertTrue( cond )
                   • assertNull( obj ), assertNotNull( obj )
                   • assertSame( obj ), assertNotSame( obj )




Programación III                           Tema 9 - Cierre
Ejemplo
           public class OperacionTest extends TestCase {
             Operacion o1;
             protected void setUp() throws Exception {
               super.setUp();
               o1 = Operacion.creaOperacion( "2 / -3 * (17 + 1)" );
             }
             public void testCreaOperacion() {
               Operacion o1b = new OperacionBinaria(
                      new Numero(2), '/', new Numero(-3) );
               Operacion o1b2 = new OperacionBinaria(
                      new Numero(17), '+', new Numero(1) );
               o1b = new OperacionBinaria( o1b, '*', o1b2 );
               assertEquals( o1, o1b );
               assertTrue( o1.getValor()==o1b.getValor() );
             }


Programación III                    Tema 9 - Cierre
TestSuite

   • Se pueden agrupar varias pruebas
           – Para lanzar todas juntas

                   TestSuite ts = new TestSuite( "ejemplo" );
                   ts.addTest( new OperacionTest() );
                   ts.addTest( new FraccionTest() );
                   ts.addTest( new RealTest() );




Programación III                      Tema 9 - Cierre
Examen

   • Dos horas
   • Ejercicio de programación en máquina
           – Partiendo de código ya desarrollado
           – Incluirá
                   • Herencia
                   • Interfaces
                   • Excepciones
                   • Ventanas
                   • Eventos
                   • Threads
   • Que compile, que funcione
Programación III                      Tema 9 - Cierre

Más contenido relacionado

Destacado

Metropolitan State University Denver - Kyle Starkey
Metropolitan State University Denver - Kyle StarkeyMetropolitan State University Denver - Kyle Starkey
Metropolitan State University Denver - Kyle StarkeyKyle Starkey
 
eva gluyas CV v6 Feb 2016
eva gluyas CV v6 Feb 2016eva gluyas CV v6 Feb 2016
eva gluyas CV v6 Feb 2016Eva Gluyas
 
LIVRO "VEREDINHA HISTÓRIA E CULTURA"(Edimar L.Santos e Ivan Geraldo)
LIVRO "VEREDINHA HISTÓRIA E CULTURA"(Edimar L.Santos e Ivan Geraldo)LIVRO "VEREDINHA HISTÓRIA E CULTURA"(Edimar L.Santos e Ivan Geraldo)
LIVRO "VEREDINHA HISTÓRIA E CULTURA"(Edimar L.Santos e Ivan Geraldo)Edimar Santos
 
Μοσκώβ -Σελήμ, Γ. Βιζυηνός Κείμενα Νεοελληνικής Λογοτεχνίας Β' Λυκείου
Μοσκώβ -Σελήμ, Γ. Βιζυηνός  Κείμενα Νεοελληνικής Λογοτεχνίας Β' ΛυκείουΜοσκώβ -Σελήμ, Γ. Βιζυηνός  Κείμενα Νεοελληνικής Λογοτεχνίας Β' Λυκείου
Μοσκώβ -Σελήμ, Γ. Βιζυηνός Κείμενα Νεοελληνικής Λογοτεχνίας Β' ΛυκείουStella Karioti
 
Biocompatibility of dental materials / aesthetic dentistry courses
Biocompatibility of dental materials / aesthetic dentistry coursesBiocompatibility of dental materials / aesthetic dentistry courses
Biocompatibility of dental materials / aesthetic dentistry coursesIndian dental academy
 
Bed side management and safety
Bed side management and safetyBed side management and safety
Bed side management and safetyBhupendra Makwana
 

Destacado (10)

Metropolitan State University Denver - Kyle Starkey
Metropolitan State University Denver - Kyle StarkeyMetropolitan State University Denver - Kyle Starkey
Metropolitan State University Denver - Kyle Starkey
 
Rent
RentRent
Rent
 
eva gluyas CV v6 Feb 2016
eva gluyas CV v6 Feb 2016eva gluyas CV v6 Feb 2016
eva gluyas CV v6 Feb 2016
 
LIVRO "VEREDINHA HISTÓRIA E CULTURA"(Edimar L.Santos e Ivan Geraldo)
LIVRO "VEREDINHA HISTÓRIA E CULTURA"(Edimar L.Santos e Ivan Geraldo)LIVRO "VEREDINHA HISTÓRIA E CULTURA"(Edimar L.Santos e Ivan Geraldo)
LIVRO "VEREDINHA HISTÓRIA E CULTURA"(Edimar L.Santos e Ivan Geraldo)
 
Intel CSR Analysis
Intel CSR AnalysisIntel CSR Analysis
Intel CSR Analysis
 
Geosoft Systems Ltd.
Geosoft Systems Ltd.Geosoft Systems Ltd.
Geosoft Systems Ltd.
 
Μοσκώβ -Σελήμ, Γ. Βιζυηνός Κείμενα Νεοελληνικής Λογοτεχνίας Β' Λυκείου
Μοσκώβ -Σελήμ, Γ. Βιζυηνός  Κείμενα Νεοελληνικής Λογοτεχνίας Β' ΛυκείουΜοσκώβ -Σελήμ, Γ. Βιζυηνός  Κείμενα Νεοελληνικής Λογοτεχνίας Β' Λυκείου
Μοσκώβ -Σελήμ, Γ. Βιζυηνός Κείμενα Νεοελληνικής Λογοτεχνίας Β' Λυκείου
 
Biocompatibility of dental materials / aesthetic dentistry courses
Biocompatibility of dental materials / aesthetic dentistry coursesBiocompatibility of dental materials / aesthetic dentistry courses
Biocompatibility of dental materials / aesthetic dentistry courses
 
Bed side management and safety
Bed side management and safetyBed side management and safety
Bed side management and safety
 
Flyer
FlyerFlyer
Flyer
 

Similar a Programación III (Java) - 09 Cierre

Pruebas de aceptación 15 11_2013
Pruebas de aceptación 15 11_2013Pruebas de aceptación 15 11_2013
Pruebas de aceptación 15 11_2013dayaorte
 
Taller: Prueba Unitaria con JUnit en NetBeans
Taller: Prueba Unitaria con JUnit en NetBeansTaller: Prueba Unitaria con JUnit en NetBeans
Taller: Prueba Unitaria con JUnit en NetBeansEmerson Garay
 
Ingenieria de sw Junit
Ingenieria de sw JunitIngenieria de sw Junit
Ingenieria de sw Junitpattyand89
 
Buenas prácticas para la construcción de software
Buenas prácticas para la construcción de softwareBuenas prácticas para la construcción de software
Buenas prácticas para la construcción de softwareIker Canarias
 
Taller de Simpletest - Drupal Day Valencia 2012
Taller de Simpletest - Drupal Day Valencia 2012Taller de Simpletest - Drupal Day Valencia 2012
Taller de Simpletest - Drupal Day Valencia 2012Juampy NR
 
Pruebas software con junit ..
Pruebas software con junit ..Pruebas software con junit ..
Pruebas software con junit ..siticfje
 
Junit y Jmock
Junit y JmockJunit y Jmock
Junit y Jmockkaolong
 
Información básica Java
Información básica JavaInformación básica Java
Información básica JavaFordBull2er
 
Tema 9 pruebas unitarias por gio
Tema 9   pruebas unitarias por gioTema 9   pruebas unitarias por gio
Tema 9 pruebas unitarias por gioRobert Wolf
 
Introducción y novedades de JUnit 5 (16/01/2018)
Introducción y novedades de JUnit 5 (16/01/2018)Introducción y novedades de JUnit 5 (16/01/2018)
Introducción y novedades de JUnit 5 (16/01/2018)Boni García
 
Pruebas Automatizadas
Pruebas AutomatizadasPruebas Automatizadas
Pruebas AutomatizadasAngel Nuñez
 
Jyoc java-cap23 j unit
Jyoc java-cap23 j unitJyoc java-cap23 j unit
Jyoc java-cap23 j unitJyoc X
 
Ejerciciosparaelprimerparcial
EjerciciosparaelprimerparcialEjerciciosparaelprimerparcial
Ejerciciosparaelprimerparcialmtemarialuisa
 

Similar a Programación III (Java) - 09 Cierre (20)

Pruebas de aceptación 15 11_2013
Pruebas de aceptación 15 11_2013Pruebas de aceptación 15 11_2013
Pruebas de aceptación 15 11_2013
 
Taller: Prueba Unitaria con JUnit en NetBeans
Taller: Prueba Unitaria con JUnit en NetBeansTaller: Prueba Unitaria con JUnit en NetBeans
Taller: Prueba Unitaria con JUnit en NetBeans
 
Presentación: xUnit y Junit
Presentación: xUnit y JunitPresentación: xUnit y Junit
Presentación: xUnit y Junit
 
Ingenieria de sw Junit
Ingenieria de sw JunitIngenieria de sw Junit
Ingenieria de sw Junit
 
Buenas prácticas para la construcción de software
Buenas prácticas para la construcción de softwareBuenas prácticas para la construcción de software
Buenas prácticas para la construcción de software
 
Taller de Simpletest - Drupal Day Valencia 2012
Taller de Simpletest - Drupal Day Valencia 2012Taller de Simpletest - Drupal Day Valencia 2012
Taller de Simpletest - Drupal Day Valencia 2012
 
Pruebas software con junit ..
Pruebas software con junit ..Pruebas software con junit ..
Pruebas software con junit ..
 
Junit y Jmock
Junit y JmockJunit y Jmock
Junit y Jmock
 
Tdd
TddTdd
Tdd
 
Información básica Java
Información básica JavaInformación básica Java
Información básica Java
 
Test unitarios
Test unitariosTest unitarios
Test unitarios
 
Qunit CookBook español
Qunit CookBook españolQunit CookBook español
Qunit CookBook español
 
Tema 9 pruebas unitarias por gio
Tema 9   pruebas unitarias por gioTema 9   pruebas unitarias por gio
Tema 9 pruebas unitarias por gio
 
Programación III (Java) - 08 threads
Programación III (Java) - 08 threadsProgramación III (Java) - 08 threads
Programación III (Java) - 08 threads
 
Introducción y novedades de JUnit 5 (16/01/2018)
Introducción y novedades de JUnit 5 (16/01/2018)Introducción y novedades de JUnit 5 (16/01/2018)
Introducción y novedades de JUnit 5 (16/01/2018)
 
Pruebas Automatizadas
Pruebas AutomatizadasPruebas Automatizadas
Pruebas Automatizadas
 
Testeo unitario
Testeo unitarioTesteo unitario
Testeo unitario
 
Jyoc java-cap23 j unit
Jyoc java-cap23 j unitJyoc java-cap23 j unit
Jyoc java-cap23 j unit
 
Ios.s14
Ios.s14Ios.s14
Ios.s14
 
Ejerciciosparaelprimerparcial
EjerciciosparaelprimerparcialEjerciciosparaelprimerparcial
Ejerciciosparaelprimerparcial
 

Más de Andoni Eguíluz Morán

Cebek oficina fija oficina movil 2 - 201611
Cebek   oficina fija oficina movil 2 - 201611Cebek   oficina fija oficina movil 2 - 201611
Cebek oficina fija oficina movil 2 - 201611Andoni Eguíluz Morán
 
Cebek - oficina fija oficina movil 1 - 201610
Cebek - oficina fija oficina movil 1 - 201610Cebek - oficina fija oficina movil 1 - 201610
Cebek - oficina fija oficina movil 1 - 201610Andoni Eguíluz Morán
 
El papel de las tic en la construccióLa integración de recursos didácticos di...
El papel de las tic en la construccióLa integración de recursos didácticos di...El papel de las tic en la construccióLa integración de recursos didácticos di...
El papel de las tic en la construccióLa integración de recursos didácticos di...Andoni Eguíluz Morán
 
Falta de profesionales tecnológicos.Cómo lo abordamos
Falta de profesionales tecnológicos.Cómo lo abordamosFalta de profesionales tecnológicos.Cómo lo abordamos
Falta de profesionales tecnológicos.Cómo lo abordamosAndoni Eguíluz Morán
 
Cebek oficina fija oficina movil 2 - 201512
Cebek   oficina fija oficina movil 2 - 201512Cebek   oficina fija oficina movil 2 - 201512
Cebek oficina fija oficina movil 2 - 201512Andoni Eguíluz Morán
 
Cebek - Oficina fija oficina movil 1 - 201512
Cebek - Oficina fija oficina movil 1 - 201512Cebek - Oficina fija oficina movil 1 - 201512
Cebek - Oficina fija oficina movil 1 - 201512Andoni Eguíluz Morán
 
Uso seguro de las TIC en el mundo educativo
Uso seguro de las TIC en el mundo educativoUso seguro de las TIC en el mundo educativo
Uso seguro de las TIC en el mundo educativoAndoni Eguíluz Morán
 
CCD2015 - Creación contenidos digitales
CCD2015 - Creación contenidos digitalesCCD2015 - Creación contenidos digitales
CCD2015 - Creación contenidos digitalesAndoni Eguíluz Morán
 
Cebek - Medidas basicas de seguridad - 201504
Cebek - Medidas basicas de seguridad - 201504Cebek - Medidas basicas de seguridad - 201504
Cebek - Medidas basicas de seguridad - 201504Andoni Eguíluz Morán
 
CYPED 2015 - Comunicación y Participación en Entornos Digitales
CYPED 2015 - Comunicación y Participación en Entornos DigitalesCYPED 2015 - Comunicación y Participación en Entornos Digitales
CYPED 2015 - Comunicación y Participación en Entornos DigitalesAndoni Eguíluz Morán
 
Cebek - jornada identidad digital corporativa
Cebek - jornada identidad digital corporativaCebek - jornada identidad digital corporativa
Cebek - jornada identidad digital corporativaAndoni Eguíluz Morán
 
Gamificación, serious games y negocio (SGGN-1409)
Gamificación, serious games y negocio (SGGN-1409)Gamificación, serious games y negocio (SGGN-1409)
Gamificación, serious games y negocio (SGGN-1409)Andoni Eguíluz Morán
 
Programación III (Java) - 06 Ventanas
Programación III (Java) - 06 VentanasProgramación III (Java) - 06 Ventanas
Programación III (Java) - 06 VentanasAndoni Eguíluz Morán
 
Programación III (Java) - 05 Genericos y Colecciones - java6-7
Programación III (Java) - 05 Genericos y Colecciones - java6-7Programación III (Java) - 05 Genericos y Colecciones - java6-7
Programación III (Java) - 05 Genericos y Colecciones - java6-7Andoni Eguíluz Morán
 
Programación III (Java) - 04 Excepciones
Programación III (Java) - 04 ExcepcionesProgramación III (Java) - 04 Excepciones
Programación III (Java) - 04 ExcepcionesAndoni Eguíluz Morán
 

Más de Andoni Eguíluz Morán (20)

Cebek oficina fija oficina movil 2 - 201611
Cebek   oficina fija oficina movil 2 - 201611Cebek   oficina fija oficina movil 2 - 201611
Cebek oficina fija oficina movil 2 - 201611
 
Cebek - oficina fija oficina movil 1 - 201610
Cebek - oficina fija oficina movil 1 - 201610Cebek - oficina fija oficina movil 1 - 201610
Cebek - oficina fija oficina movil 1 - 201610
 
El papel de las tic en la construccióLa integración de recursos didácticos di...
El papel de las tic en la construccióLa integración de recursos didácticos di...El papel de las tic en la construccióLa integración de recursos didácticos di...
El papel de las tic en la construccióLa integración de recursos didácticos di...
 
Falta de profesionales tecnológicos.Cómo lo abordamos
Falta de profesionales tecnológicos.Cómo lo abordamosFalta de profesionales tecnológicos.Cómo lo abordamos
Falta de profesionales tecnológicos.Cómo lo abordamos
 
Cebek oficina fija oficina movil 2 - 201512
Cebek   oficina fija oficina movil 2 - 201512Cebek   oficina fija oficina movil 2 - 201512
Cebek oficina fija oficina movil 2 - 201512
 
Cebek - Oficina fija oficina movil 1 - 201512
Cebek - Oficina fija oficina movil 1 - 201512Cebek - Oficina fija oficina movil 1 - 201512
Cebek - Oficina fija oficina movil 1 - 201512
 
Uso seguro de las TIC en el mundo educativo
Uso seguro de las TIC en el mundo educativoUso seguro de las TIC en el mundo educativo
Uso seguro de las TIC en el mundo educativo
 
Uso ético y seguro de las TIC
Uso ético y seguro de las TICUso ético y seguro de las TIC
Uso ético y seguro de las TIC
 
Redes Sociales Educativas
Redes Sociales EducativasRedes Sociales Educativas
Redes Sociales Educativas
 
CCD2015 - Creación contenidos digitales
CCD2015 - Creación contenidos digitalesCCD2015 - Creación contenidos digitales
CCD2015 - Creación contenidos digitales
 
Cebek - Medidas basicas de seguridad - 201504
Cebek - Medidas basicas de seguridad - 201504Cebek - Medidas basicas de seguridad - 201504
Cebek - Medidas basicas de seguridad - 201504
 
CYPED 2015 - Comunicación y Participación en Entornos Digitales
CYPED 2015 - Comunicación y Participación en Entornos DigitalesCYPED 2015 - Comunicación y Participación en Entornos Digitales
CYPED 2015 - Comunicación y Participación en Entornos Digitales
 
Cebek - jornada identidad digital corporativa
Cebek - jornada identidad digital corporativaCebek - jornada identidad digital corporativa
Cebek - jornada identidad digital corporativa
 
Gamificación, serious games y negocio (SGGN-1409)
Gamificación, serious games y negocio (SGGN-1409)Gamificación, serious games y negocio (SGGN-1409)
Gamificación, serious games y negocio (SGGN-1409)
 
SGGN 20140605
SGGN 20140605SGGN 20140605
SGGN 20140605
 
Programación III (Java) - 07b Swing
Programación III (Java) - 07b SwingProgramación III (Java) - 07b Swing
Programación III (Java) - 07b Swing
 
Programación III (Java) - 07 Eventos
Programación III (Java) - 07 EventosProgramación III (Java) - 07 Eventos
Programación III (Java) - 07 Eventos
 
Programación III (Java) - 06 Ventanas
Programación III (Java) - 06 VentanasProgramación III (Java) - 06 Ventanas
Programación III (Java) - 06 Ventanas
 
Programación III (Java) - 05 Genericos y Colecciones - java6-7
Programación III (Java) - 05 Genericos y Colecciones - java6-7Programación III (Java) - 05 Genericos y Colecciones - java6-7
Programación III (Java) - 05 Genericos y Colecciones - java6-7
 
Programación III (Java) - 04 Excepciones
Programación III (Java) - 04 ExcepcionesProgramación III (Java) - 04 Excepciones
Programación III (Java) - 04 Excepciones
 

Último

Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOluismii249
 
Apunte clase teorica propiedades de la Madera.pdf
Apunte clase teorica propiedades de la Madera.pdfApunte clase teorica propiedades de la Madera.pdf
Apunte clase teorica propiedades de la Madera.pdfGonella
 
sesion de aprendizaje 1 SEC. 13- 17 MAYO 2024 comunicación.pdf
sesion de aprendizaje 1 SEC. 13- 17  MAYO  2024 comunicación.pdfsesion de aprendizaje 1 SEC. 13- 17  MAYO  2024 comunicación.pdf
sesion de aprendizaje 1 SEC. 13- 17 MAYO 2024 comunicación.pdfmaria luisa pahuara allcca
 
1ERGRA~2.PDF EVALUACION DIAGNOSTICA 2024
1ERGRA~2.PDF EVALUACION DIAGNOSTICA 20241ERGRA~2.PDF EVALUACION DIAGNOSTICA 2024
1ERGRA~2.PDF EVALUACION DIAGNOSTICA 2024hlitocs
 
informe-de-laboratorio-metodos-de-separacion-de-mezclas.pdf
informe-de-laboratorio-metodos-de-separacion-de-mezclas.pdfinforme-de-laboratorio-metodos-de-separacion-de-mezclas.pdf
informe-de-laboratorio-metodos-de-separacion-de-mezclas.pdfAndreaTurell
 
FICHA CUENTO BUSCANDO UNA MAMÁ 2024 MAESTRA JANET.pdf
FICHA CUENTO BUSCANDO UNA MAMÁ  2024 MAESTRA JANET.pdfFICHA CUENTO BUSCANDO UNA MAMÁ  2024 MAESTRA JANET.pdf
FICHA CUENTO BUSCANDO UNA MAMÁ 2024 MAESTRA JANET.pdfPaulaAnglicaBustaman
 
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptxAEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptxhenarfdez
 
Educacion Basada en Evidencias SM5 Ccesa007.pdf
Educacion Basada en Evidencias  SM5  Ccesa007.pdfEducacion Basada en Evidencias  SM5  Ccesa007.pdf
Educacion Basada en Evidencias SM5 Ccesa007.pdfDemetrio Ccesa Rayme
 
Las Preguntas Educativas entran a las Aulas CIAESA Ccesa007.pdf
Las Preguntas Educativas entran a las Aulas CIAESA  Ccesa007.pdfLas Preguntas Educativas entran a las Aulas CIAESA  Ccesa007.pdf
Las Preguntas Educativas entran a las Aulas CIAESA Ccesa007.pdfDemetrio Ccesa Rayme
 
Programa dia de las madres para la convi
Programa dia de las madres para la conviPrograma dia de las madres para la convi
Programa dia de las madres para la convikevinmolina060703
 
2° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
2° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx2° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
2° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxcandy torres
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...JAVIER SOLIS NOYOLA
 
POEMAS ILUSTRADOS DE LUÍSA VILLALTA. Elaborados polos alumnos de 4º PDC do IE...
POEMAS ILUSTRADOS DE LUÍSA VILLALTA. Elaborados polos alumnos de 4º PDC do IE...POEMAS ILUSTRADOS DE LUÍSA VILLALTA. Elaborados polos alumnos de 4º PDC do IE...
POEMAS ILUSTRADOS DE LUÍSA VILLALTA. Elaborados polos alumnos de 4º PDC do IE...Agrela Elvixeo
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOluismii249
 
animalesdelaproincia de beunos aires.pdf
animalesdelaproincia de beunos aires.pdfanimalesdelaproincia de beunos aires.pdf
animalesdelaproincia de beunos aires.pdfSofiaArias58
 
12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU
12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU
12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHUSantiago Perez-Hoyos
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxFernando Solis
 

Último (20)

Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
Apunte clase teorica propiedades de la Madera.pdf
Apunte clase teorica propiedades de la Madera.pdfApunte clase teorica propiedades de la Madera.pdf
Apunte clase teorica propiedades de la Madera.pdf
 
sesion de aprendizaje 1 SEC. 13- 17 MAYO 2024 comunicación.pdf
sesion de aprendizaje 1 SEC. 13- 17  MAYO  2024 comunicación.pdfsesion de aprendizaje 1 SEC. 13- 17  MAYO  2024 comunicación.pdf
sesion de aprendizaje 1 SEC. 13- 17 MAYO 2024 comunicación.pdf
 
1ERGRA~2.PDF EVALUACION DIAGNOSTICA 2024
1ERGRA~2.PDF EVALUACION DIAGNOSTICA 20241ERGRA~2.PDF EVALUACION DIAGNOSTICA 2024
1ERGRA~2.PDF EVALUACION DIAGNOSTICA 2024
 
TÉCNICAS OBSERVACIONALES Y TEXTUALES.pdf
TÉCNICAS OBSERVACIONALES Y TEXTUALES.pdfTÉCNICAS OBSERVACIONALES Y TEXTUALES.pdf
TÉCNICAS OBSERVACIONALES Y TEXTUALES.pdf
 
informe-de-laboratorio-metodos-de-separacion-de-mezclas.pdf
informe-de-laboratorio-metodos-de-separacion-de-mezclas.pdfinforme-de-laboratorio-metodos-de-separacion-de-mezclas.pdf
informe-de-laboratorio-metodos-de-separacion-de-mezclas.pdf
 
FICHA CUENTO BUSCANDO UNA MAMÁ 2024 MAESTRA JANET.pdf
FICHA CUENTO BUSCANDO UNA MAMÁ  2024 MAESTRA JANET.pdfFICHA CUENTO BUSCANDO UNA MAMÁ  2024 MAESTRA JANET.pdf
FICHA CUENTO BUSCANDO UNA MAMÁ 2024 MAESTRA JANET.pdf
 
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptxAEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
 
Educacion Basada en Evidencias SM5 Ccesa007.pdf
Educacion Basada en Evidencias  SM5  Ccesa007.pdfEducacion Basada en Evidencias  SM5  Ccesa007.pdf
Educacion Basada en Evidencias SM5 Ccesa007.pdf
 
Las Preguntas Educativas entran a las Aulas CIAESA Ccesa007.pdf
Las Preguntas Educativas entran a las Aulas CIAESA  Ccesa007.pdfLas Preguntas Educativas entran a las Aulas CIAESA  Ccesa007.pdf
Las Preguntas Educativas entran a las Aulas CIAESA Ccesa007.pdf
 
Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
Programa dia de las madres para la convi
Programa dia de las madres para la conviPrograma dia de las madres para la convi
Programa dia de las madres para la convi
 
2° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
2° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx2° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
2° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
 
Lecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigosLecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigos
 
POEMAS ILUSTRADOS DE LUÍSA VILLALTA. Elaborados polos alumnos de 4º PDC do IE...
POEMAS ILUSTRADOS DE LUÍSA VILLALTA. Elaborados polos alumnos de 4º PDC do IE...POEMAS ILUSTRADOS DE LUÍSA VILLALTA. Elaborados polos alumnos de 4º PDC do IE...
POEMAS ILUSTRADOS DE LUÍSA VILLALTA. Elaborados polos alumnos de 4º PDC do IE...
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
animalesdelaproincia de beunos aires.pdf
animalesdelaproincia de beunos aires.pdfanimalesdelaproincia de beunos aires.pdf
animalesdelaproincia de beunos aires.pdf
 
12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU
12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU
12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 

Programación III (Java) - 09 Cierre

  • 1. 9. Cierre JUnit y pruebas unitarias Examen Programación III Tema 9 - Cierre
  • 2. JUnit y pruebas unitarias • JUnit es un framework para desarrollar pruebas unitarias – Pruebas de una clase / módulo de código – Objetivo: aislar las partes y probar la corrección de cada una – Se podrán ejecutar de forma automática • JUnit es una herramienta gratuita – http://www.junit.org – Integrada con Eclipse, NetBeans y otros IDEs Programación III Tema 9 - Cierre
  • 3. ¿Ganamos/perdemos tiempo? • Es habitual la idea de que hacer JUnit's es una pérdida de tiempo – Pero es más una inversión – No sólo vale para prueba inicial sino • seguir probando en la evolución del sistema • permiten incorporar los bugs como nuevas pruebas • de forma progresiva ("aprender de los errores") • ¡Merece la pena invertir el tiempo para luego recuperarlo! Programación III Tema 9 - Cierre
  • 4. Versión de JUnit • JUnit 3 utiliza código Java "habitual" • JUnit 4 utiliza anotaciones • En este resumen sólo hablaremos de JUnit 3 Programación III Tema 9 - Cierre
  • 5. Pasos a seguir – Importar JUnit: – import junit.framework.TestCase; – Crear una clase que extienda TestCase • Clase de pueba para una clase – Implementar método setUp() • Inicialización de las pruebas – Implementar método tearDown() • Si procede para liberar recursos (cerrar ficheros...) – Definir métodos de test: testXXX() • Uno por cada método original (XXX = nombre) – Ejecución del caso de prueba • Método run() Programación III Tema 9 - Cierre
  • 6. ¿Qué hay en los tests? – Varios métodos que se pueden utilizar: • testEquals( val1, val2 ) --> si no son equals, fallo • testTrue( cond ) --> si no es cierta, fallo • fail( mensaje ) --> si llega a ejecutarse es fallo – También aserciones: • assertFalse( cond ), assertTrue( cond ) • assertNull( obj ), assertNotNull( obj ) • assertSame( obj ), assertNotSame( obj ) Programación III Tema 9 - Cierre
  • 7. Ejemplo public class OperacionTest extends TestCase { Operacion o1; protected void setUp() throws Exception { super.setUp(); o1 = Operacion.creaOperacion( "2 / -3 * (17 + 1)" ); } public void testCreaOperacion() { Operacion o1b = new OperacionBinaria( new Numero(2), '/', new Numero(-3) ); Operacion o1b2 = new OperacionBinaria( new Numero(17), '+', new Numero(1) ); o1b = new OperacionBinaria( o1b, '*', o1b2 ); assertEquals( o1, o1b ); assertTrue( o1.getValor()==o1b.getValor() ); } Programación III Tema 9 - Cierre
  • 8. TestSuite • Se pueden agrupar varias pruebas – Para lanzar todas juntas TestSuite ts = new TestSuite( "ejemplo" ); ts.addTest( new OperacionTest() ); ts.addTest( new FraccionTest() ); ts.addTest( new RealTest() ); Programación III Tema 9 - Cierre
  • 9. Examen • Dos horas • Ejercicio de programación en máquina – Partiendo de código ya desarrollado – Incluirá • Herencia • Interfaces • Excepciones • Ventanas • Eventos • Threads • Que compile, que funcione Programación III Tema 9 - Cierre