SlideShare una empresa de Scribd logo
1/44
AUTOMATIZACIÓN UNIT TESTING
         JAVASCRIPT

                     Tomás Corral




                                    2/44
3/44
EVOLUCIÓN DE LAS PRUEBAS EN JAVASCRIPT




 JAVASCRIPT   MOSTRAR    HERRAMIENTAS     LIBRERÍAS        TEST
   NATIVO     ERRORES         DE              DE        DISTRIBUIDO
              EN CAPAS    DESARROLLO    TEST UNITARIO



                                                                      4/44
HERRAMIENTAS
  • JsTestDriver
  • Sinon.js
  • Jenkins




                   5/44
6/44
TEST RUNNER




              7/44
8/44
ADAPTERS




           9/44
PLUGINS IDE’S




                10/44
11/44
12/44
SPY


      13/44
SPY
Función / Método no existente




                                14/44
SPY
Función / Método existente




                             15/44
STUB


   16/44
STUB




       17/44
MOCK


       18/44
MOCK




       19/44
useFakeTimers




            20/44
useFakeTimers




                21/44
useFakeXMLHttpRequest




                        22/44
useFakeXMLHttpRequest




                        23/44
fakeServer.create




                24/44
fakeServer.create




                    25/44
26/44
27/44
Integración Continua




                       28/44
29/44
30/44
Aumentar
la calidad del
    código
                 31/44
32/44
33/44
32/43
Warning! JSLint will hurt your feelings.




                                           34/44
Programar




                      +




            HARNESS




                          35/44
CONFIGURACIÓN
  SERVIDOR
 UNIT TESTING




            36/44
2Gb RAM




                 :XXX1    :XXX3         :XXX5        :XXX7        :XXX9           :XX11
                 :XXX2    :XXX4         :XXX6        :XXX8        :XX10           :XX12




              Scripts


Al lanzar los test       Balanceo de carga de servidores. ¿Que servidor queda libre?



     5 min               ¿Están escuchando todos los navegadores?         ¿Hay algún servidor bloqueado?

    2 horas              Reiniciamos todos los navegadores: Internet Explorer

    4 horas              Reiniciamos todos los navegadores: Firefox


                                                                                                           37/44
COLABORA


           38/44
39/44
Contacto:

E-mail:         amischol@gmail.com
E-mail corp.:   tomas.corral@softonic.com

Twitter:        @amischol




                                            40/44
http://bit.ly/softhire

                         41/44
42/44
JsTestDriver        :   http://code.google.com/p/js-test-driver/
Qunit adapter       :   http://code.google.com/p/js-test-driver/wiki/QUnitAdapter
Jasmine adapter     :   http://github.com/ibolmo/jasmine-jstd-adapter
Sinon.js            :   http://sinonjs.org
SVN                 :   http://subversion.tigris.org/
GIT                 :   http://git-scm.com/
Pre-commit hooks    :   http://wordaligned.org/articles/a-subversion-pre-commit-hook
Test Harness        :   http://en.wikipedia.org/wiki/Test_harness/
Balanceo de carga   :   http://es.wikipedia.org/wiki/Balance_de_carga




                                                                                       43/44
Images disclaimer: All the images and photographs used in this presentation are of their legal owners.
Images found using Google Images on:

http://muengg.com/blog/
http://60secondmarketer.com/blog/2010/08/30/20-questions-to-help-you-differentiate-your-brand/
http://crashtestdummy.com.au/wp-content/uploads/2010/12/crash-test-dummy-awards.jpg
http://www.collution.com.ar/
http://techcenterpc.blogspot.com/
http://www.wallpaper1080hd.com/desk/1920x1200/2010/0718/4340.html
http://jenkins-ci.org/
http://comecocos.com/2011/es-imposible-viajar-en-el-tiempo/the_time_machine/
http://luauf.com/category/programacion/ajax/
http://www.movies-wallpapers.net/Wallpaper-Austin%20Powers%20In%20Goldmember/Austin%20Powers%20In%20Goldmember-49.jpg.html
http://www.masoportunidades.com.ar/aviso/6173058-el-super-agente-86-todas-las-temporadas-completas-disponible-en-capital-federal
http://www.sololistas.net/los-mejores-james-bond.html
http://sinonjs.org
http://www.pixalonstudios.com/index.php?page=games&game=dummies
http://code.google.com/p/js-test-driver/
http://www.shutterstock.com/index.mhtml?language=es&gclid=CMyP-5-M5a4CFZARfAodnBArvw
http://www.wordans.com.au/lego+designs
http://www.moebiusonline.eu/fuorionda/RobotCrashTest.shtml
http://www.latostadora.com/disponibilidad_dibujo/crash_test_dummies/57175
http://subversion.tigris.org/
http://git-scm.com/
https://www.pyro-tection.com/rescueshop/catalog/index.php/cPath/59
http://www.disfrazmania.com/seccion/Todo-para-piratas/articulo/Garfio




                                                                                                                                   44/44

Más contenido relacionado

Similar a Automatización Unit Testing Javascript

Virtual Box
Virtual BoxVirtual Box
Virtual Box
anayandun2023
 
Practicas tecnicas
Practicas tecnicasPracticas tecnicas
S7-200 GUIA DE PRACTICAS MUY BUENAS - copia.pdf
S7-200 GUIA DE PRACTICAS MUY BUENAS - copia.pdfS7-200 GUIA DE PRACTICAS MUY BUENAS - copia.pdf
S7-200 GUIA DE PRACTICAS MUY BUENAS - copia.pdf
ENRIQUE gonzalez
 
Seminario Jade 2014
Seminario Jade 2014Seminario Jade 2014
Seminario Jade 2014
Gonzalo Aranda
 
Introducción a testing en php
Introducción a testing en phpIntroducción a testing en php
Introducción a testing en phpIsmael Ambrosi
 
Memoria PFC
Memoria PFCMemoria PFC
Memoria PFC
Mario Rodriguez
 
Epo 450 cluster_install_guide_es-es
Epo 450 cluster_install_guide_es-esEpo 450 cluster_install_guide_es-es
Epo 450 cluster_install_guide_es-esPablo
 
Usando Django con Docker
Usando Django con DockerUsando Django con Docker
Usando Django con Docker
Ernesto Crespo
 
El poder de los reptiles: Hacer herramientas de hacking es fácil
El poder de los reptiles: Hacer herramientas de hacking es fácilEl poder de los reptiles: Hacer herramientas de hacking es fácil
El poder de los reptiles: Hacer herramientas de hacking es fácil
Daniel Garcia (a.k.a cr0hn)
 
Calidad de código en Chamilo: Behat, Travis-CI y Scrutinizer-CI
Calidad de código en Chamilo: Behat, Travis-CI y Scrutinizer-CICalidad de código en Chamilo: Behat, Travis-CI y Scrutinizer-CI
Calidad de código en Chamilo: Behat, Travis-CI y Scrutinizer-CI
Yannick Warnier
 
Atica Dev Ops II
Atica Dev Ops IIAtica Dev Ops II
Consola Cake Php, Uso Y Testing
Consola Cake Php, Uso Y TestingConsola Cake Php, Uso Y Testing
Consola Cake Php, Uso Y Testing
driveros
 
16.1 herramientas de qa.pdf
16.1 herramientas de qa.pdf16.1 herramientas de qa.pdf
16.1 herramientas de qa.pdf
Codesa
 
Jonnatan VIRTUAL BOX.doc
Jonnatan  VIRTUAL BOX.docJonnatan  VIRTUAL BOX.doc
Jonnatan VIRTUAL BOX.doc
jonatanmendez11
 
Cómo diagnosticar problemas de rendimiento en entornos LAMP
Cómo diagnosticar problemas de rendimiento en entornos LAMPCómo diagnosticar problemas de rendimiento en entornos LAMP
Cómo diagnosticar problemas de rendimiento en entornos LAMPJavier Carranza
 
Open source malware analysis
Open source malware analysisOpen source malware analysis
Open source malware analysis
S21Sec
 
16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...
16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...
16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...
Luis Fernando Aguas Bucheli
 
Ingeniería de pruebas en arquitectura cliente-servidor
Ingeniería de pruebas en arquitectura cliente-servidorIngeniería de pruebas en arquitectura cliente-servidor
Ingeniería de pruebas en arquitectura cliente-servidor
Mauro Parra-Miranda
 

Similar a Automatización Unit Testing Javascript (20)

Virtual Box
Virtual BoxVirtual Box
Virtual Box
 
Unidad i
Unidad iUnidad i
Unidad i
 
Practicas tecnicas
Practicas tecnicasPracticas tecnicas
Practicas tecnicas
 
S7-200 GUIA DE PRACTICAS MUY BUENAS - copia.pdf
S7-200 GUIA DE PRACTICAS MUY BUENAS - copia.pdfS7-200 GUIA DE PRACTICAS MUY BUENAS - copia.pdf
S7-200 GUIA DE PRACTICAS MUY BUENAS - copia.pdf
 
Seminario Jade 2014
Seminario Jade 2014Seminario Jade 2014
Seminario Jade 2014
 
Introducción a testing en php
Introducción a testing en phpIntroducción a testing en php
Introducción a testing en php
 
Memoria PFC
Memoria PFCMemoria PFC
Memoria PFC
 
Presentación GridUAM 201112
Presentación GridUAM 201112Presentación GridUAM 201112
Presentación GridUAM 201112
 
Epo 450 cluster_install_guide_es-es
Epo 450 cluster_install_guide_es-esEpo 450 cluster_install_guide_es-es
Epo 450 cluster_install_guide_es-es
 
Usando Django con Docker
Usando Django con DockerUsando Django con Docker
Usando Django con Docker
 
El poder de los reptiles: Hacer herramientas de hacking es fácil
El poder de los reptiles: Hacer herramientas de hacking es fácilEl poder de los reptiles: Hacer herramientas de hacking es fácil
El poder de los reptiles: Hacer herramientas de hacking es fácil
 
Calidad de código en Chamilo: Behat, Travis-CI y Scrutinizer-CI
Calidad de código en Chamilo: Behat, Travis-CI y Scrutinizer-CICalidad de código en Chamilo: Behat, Travis-CI y Scrutinizer-CI
Calidad de código en Chamilo: Behat, Travis-CI y Scrutinizer-CI
 
Atica Dev Ops II
Atica Dev Ops IIAtica Dev Ops II
Atica Dev Ops II
 
Consola Cake Php, Uso Y Testing
Consola Cake Php, Uso Y TestingConsola Cake Php, Uso Y Testing
Consola Cake Php, Uso Y Testing
 
16.1 herramientas de qa.pdf
16.1 herramientas de qa.pdf16.1 herramientas de qa.pdf
16.1 herramientas de qa.pdf
 
Jonnatan VIRTUAL BOX.doc
Jonnatan  VIRTUAL BOX.docJonnatan  VIRTUAL BOX.doc
Jonnatan VIRTUAL BOX.doc
 
Cómo diagnosticar problemas de rendimiento en entornos LAMP
Cómo diagnosticar problemas de rendimiento en entornos LAMPCómo diagnosticar problemas de rendimiento en entornos LAMP
Cómo diagnosticar problemas de rendimiento en entornos LAMP
 
Open source malware analysis
Open source malware analysisOpen source malware analysis
Open source malware analysis
 
16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...
16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...
16-Unidad 4: Introducción a las Arquitecturas Web 4.3 NCAPAS 4.4 PRUEBAS UNIT...
 
Ingeniería de pruebas en arquitectura cliente-servidor
Ingeniería de pruebas en arquitectura cliente-servidorIngeniería de pruebas en arquitectura cliente-servidor
Ingeniería de pruebas en arquitectura cliente-servidor
 

Más de Tomas Corral Casas

Introduction to TypeScript
Introduction to TypeScriptIntroduction to TypeScript
Introduction to TypeScript
Tomas Corral Casas
 
Mikado method
Mikado methodMikado method
Mikado method
Tomas Corral Casas
 
Testea y aumenta tu karma
Testea y aumenta tu karmaTestea y aumenta tu karma
Testea y aumenta tu karma
Tomas Corral Casas
 
Lo que los desarrolladores web deberían saber
Lo que los desarrolladores web deberían saberLo que los desarrolladores web deberían saber
Lo que los desarrolladores web deberían saber
Tomas Corral Casas
 
Hydra.js modula tu código
Hydra.js modula tu códigoHydra.js modula tu código
Hydra.js modula tu código
Tomas Corral Casas
 
Less is more
Less is moreLess is more
Less is more
Tomas Corral Casas
 
Design patterns in Javascript
Design patterns in JavascriptDesign patterns in Javascript
Design patterns in Javascript
Tomas Corral Casas
 

Más de Tomas Corral Casas (9)

Introduction to TypeScript
Introduction to TypeScriptIntroduction to TypeScript
Introduction to TypeScript
 
Mikado method
Mikado methodMikado method
Mikado method
 
Welovejs AngularJS
Welovejs AngularJS Welovejs AngularJS
Welovejs AngularJS
 
Testea y aumenta tu karma
Testea y aumenta tu karmaTestea y aumenta tu karma
Testea y aumenta tu karma
 
Coderdojo bcn 12_10_2013
Coderdojo bcn 12_10_2013Coderdojo bcn 12_10_2013
Coderdojo bcn 12_10_2013
 
Lo que los desarrolladores web deberían saber
Lo que los desarrolladores web deberían saberLo que los desarrolladores web deberían saber
Lo que los desarrolladores web deberían saber
 
Hydra.js modula tu código
Hydra.js modula tu códigoHydra.js modula tu código
Hydra.js modula tu código
 
Less is more
Less is moreLess is more
Less is more
 
Design patterns in Javascript
Design patterns in JavascriptDesign patterns in Javascript
Design patterns in Javascript
 

Último

Desarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdfDesarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdf
samuelvideos
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
coloradxmaria
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
marianabz2403
 
actividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañerosactividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañeros
aljitagallego
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
NajwaNimri1
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
CesarPazosQuispe
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
IsabelQuintero36
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
cdraco
 
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB  S2. PARA VSATMANUAL DEL DECODIFICADOR DVB  S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
Ing. Julio Iván Mera Casas
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
PABLOCESARGARZONBENI
 
absorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratoriosabsorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratorios
JuanAlvarez413513
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Telefónica
 
Conceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdfConceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdf
ValeriaAyala48
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
ItsSofi
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
Fernando Villares
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
Emilio Casbas
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
JulyMuoz18
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
evelinglilibethpeafi
 

Último (20)

Desarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdfDesarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdf
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
 
actividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañerosactividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañeros
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB  S2. PARA VSATMANUAL DEL DECODIFICADOR DVB  S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
 
absorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratoriosabsorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratorios
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
 
Conceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdfConceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdf
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
 

Automatización Unit Testing Javascript

  • 2. AUTOMATIZACIÓN UNIT TESTING JAVASCRIPT Tomás Corral 2/44
  • 4. EVOLUCIÓN DE LAS PRUEBAS EN JAVASCRIPT JAVASCRIPT MOSTRAR HERRAMIENTAS LIBRERÍAS TEST NATIVO ERRORES DE DE DISTRIBUIDO EN CAPAS DESARROLLO TEST UNITARIO 4/44
  • 5. HERRAMIENTAS • JsTestDriver • Sinon.js • Jenkins 5/44
  • 7. TEST RUNNER 7/44
  • 9. ADAPTERS 9/44
  • 11. 11/44
  • 12. 12/44
  • 13. SPY 13/44
  • 14. SPY Función / Método no existente 14/44
  • 15. SPY Función / Método existente 15/44
  • 16. STUB 16/44
  • 17. STUB 17/44
  • 18. MOCK 18/44
  • 19. MOCK 19/44
  • 20. useFakeTimers 20/44
  • 21. useFakeTimers 21/44
  • 26. 26/44
  • 27. 27/44
  • 29. 29/44
  • 30. 30/44
  • 31. Aumentar la calidad del código 31/44
  • 32. 32/44
  • 34. Warning! JSLint will hurt your feelings. 34/44
  • 35. Programar + HARNESS 35/44
  • 36. CONFIGURACIÓN SERVIDOR UNIT TESTING 36/44
  • 37. 2Gb RAM :XXX1 :XXX3 :XXX5 :XXX7 :XXX9 :XX11 :XXX2 :XXX4 :XXX6 :XXX8 :XX10 :XX12 Scripts Al lanzar los test Balanceo de carga de servidores. ¿Que servidor queda libre? 5 min ¿Están escuchando todos los navegadores? ¿Hay algún servidor bloqueado? 2 horas Reiniciamos todos los navegadores: Internet Explorer 4 horas Reiniciamos todos los navegadores: Firefox 37/44
  • 38. COLABORA 38/44
  • 39. 39/44
  • 40. Contacto: E-mail: amischol@gmail.com E-mail corp.: tomas.corral@softonic.com Twitter: @amischol 40/44
  • 42. 42/44
  • 43. JsTestDriver : http://code.google.com/p/js-test-driver/ Qunit adapter : http://code.google.com/p/js-test-driver/wiki/QUnitAdapter Jasmine adapter : http://github.com/ibolmo/jasmine-jstd-adapter Sinon.js : http://sinonjs.org SVN : http://subversion.tigris.org/ GIT : http://git-scm.com/ Pre-commit hooks : http://wordaligned.org/articles/a-subversion-pre-commit-hook Test Harness : http://en.wikipedia.org/wiki/Test_harness/ Balanceo de carga : http://es.wikipedia.org/wiki/Balance_de_carga 43/44
  • 44. Images disclaimer: All the images and photographs used in this presentation are of their legal owners. Images found using Google Images on: http://muengg.com/blog/ http://60secondmarketer.com/blog/2010/08/30/20-questions-to-help-you-differentiate-your-brand/ http://crashtestdummy.com.au/wp-content/uploads/2010/12/crash-test-dummy-awards.jpg http://www.collution.com.ar/ http://techcenterpc.blogspot.com/ http://www.wallpaper1080hd.com/desk/1920x1200/2010/0718/4340.html http://jenkins-ci.org/ http://comecocos.com/2011/es-imposible-viajar-en-el-tiempo/the_time_machine/ http://luauf.com/category/programacion/ajax/ http://www.movies-wallpapers.net/Wallpaper-Austin%20Powers%20In%20Goldmember/Austin%20Powers%20In%20Goldmember-49.jpg.html http://www.masoportunidades.com.ar/aviso/6173058-el-super-agente-86-todas-las-temporadas-completas-disponible-en-capital-federal http://www.sololistas.net/los-mejores-james-bond.html http://sinonjs.org http://www.pixalonstudios.com/index.php?page=games&game=dummies http://code.google.com/p/js-test-driver/ http://www.shutterstock.com/index.mhtml?language=es&gclid=CMyP-5-M5a4CFZARfAodnBArvw http://www.wordans.com.au/lego+designs http://www.moebiusonline.eu/fuorionda/RobotCrashTest.shtml http://www.latostadora.com/disponibilidad_dibujo/crash_test_dummies/57175 http://subversion.tigris.org/ http://git-scm.com/ https://www.pyro-tection.com/rescueshop/catalog/index.php/cPath/59 http://www.disfrazmania.com/seccion/Todo-para-piratas/articulo/Garfio 44/44