SlideShare una empresa de Scribd logo
Drupal Day Valencia
Taller de Simpletest
   Juan Pablo Novillo
   Ricardo Sanz Ante


                        28 de abril de 2012
Qué es SimpleTest

● Automatización de tests.

● Un test simula una sesión de usuario en Drupal y/o llama
  directamente a funciones.

● Incluye un navegador web.

● Primero realizan acciones y despues
  verifican resultados, informando al final.
En qué me puede ayudar

● Testear una aplicación muy rápidamente.

● Refactorizar código.

● Detectar errores
  con mayor
  antelación

● Agilizar el trabajo
  del departamento
  de calidad.
Para qué sirve


Existen 3 tipos de tests:

 ● Tests unitarios (funciones, clases).

 ● Tests funcionales (módulos, componentes).

 ● Tests de integración (todo un site).
Cómo funciona


● Test unitarios: sobre la instancia real. No hay
  acceso a BD ni a files (Salta una excepción).

● Test funcionales: sobre una instancia nueva de Drupal en la
  misma BD pero con tablas con prefijo. Se debe activar
  cualquier módulo o configuración necesaria para los tests
  en los propios tests.

● Tests de integración: sobre copia exacta del sitio, con
  tablas con prefijo. Permite ejecutar los tests sin tener que
  reconfigurar el sitio ya que se mantiene la configuración.
Ciclo de ejecución de tests


                Cada TestCase se
                compone de funciones
                de test (un método, un test).

                Cada ejecución de un test implica la
                creación del entorno del test,
                realización del test, y destrucción
                del entorno.

                Cada test se ejecuta
                en un entorno limpio o propio.
Cómo empezar



1. ¿Qué es lo más importante de mi proyecto?

2. ¿Cómo puedo testearlo?

3. ¿Qué necesito para poder reproducir lo que quiero testear?

4. ¡Comencemos!
Recursos


● Página principal de Simpletest en Drupal.org

● Assertions: listado de posibles evaluaciones con ejemplos

● API de funciones. Métodos de la clase
  drupal_web_test_case

● Consejos para analizar tests.

● Xdebug para analizar flujos en el código.
Ejemplos


● Tests del módulo Twitter. Revisar su arquitectura y cómo
  suplanta a la API externa durante los tests.


● Verificación del roceso de registro de la web del Drupal Day
  Valencia con SimpleTest Clone.
Ejercicio
Añadir tests a un módulo popular de Drupal.org. Decidir en
grupo entre los siguientes:


 ● Backup and Migrate                 ● Calendar


 ● Views Slideshow                    ● Site Map


 ● Advanced Help                      ● Colorbox


 ● Menu Block                         ● Email field
Resultado del ejercicio

Test funcional añadido al módulo Site map.

Simula los siguientes pasos:

 1. Creación de un usuario e inicio de sesión.
 2. Configuración de Site map.
 3. Creación de un nodo.
 4. Comprobación de que el nodo aparece listado en /sitemap.

http://drupal.org/node/1551940

Más contenido relacionado

PDF
Pruebas Unitarias
PPTX
Pruebas Unitarias
PPTX
Integracion Continua
PPT
Presentacion de integracion continua (lima agile)
PDF
Taller evento TestingUY 2015 - Técnicas de Automatización Going from GOOD to ...
PDF
PHP Unit y TDD
PDF
Java mission control para monitoreo, administración y profilig de aplicacion...
Pruebas Unitarias
Pruebas Unitarias
Integracion Continua
Presentacion de integracion continua (lima agile)
Taller evento TestingUY 2015 - Técnicas de Automatización Going from GOOD to ...
PHP Unit y TDD
Java mission control para monitoreo, administración y profilig de aplicacion...

La actualidad más candente (20)

KEY
Prueba De Aplicaciones Web con Selenium 2 y WebDriver
PDF
Taller: Prueba Unitaria con JUnit en NetBeans
PPTX
Spring boot et. al. para el impaciente
PDF
Integracion Continua
PDF
Administración de la calidad del software a través del análisis estático de c...
PPTX
El coste de no usar integración continua
PPTX
Java – ejercicio 2
PPT
Encadenamiento de refactorings para generar cambios Agiles de Diseño
PDF
Análisis estático de código en Java
PDF
Testing & debugging lightning web components
PDF
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
PDF
Tema 2 implementar el demo zk
PPTX
Selenium
PPTX
Introducción a Unit Testing y TDD
PDF
Cu00612 b compilar ejecutar programa java windows consola cmd dos
PDF
No debuggearás - Introducción al Unit Testing y TDD
PPTX
Instalacion de java y NetBeans
Prueba De Aplicaciones Web con Selenium 2 y WebDriver
Taller: Prueba Unitaria con JUnit en NetBeans
Spring boot et. al. para el impaciente
Integracion Continua
Administración de la calidad del software a través del análisis estático de c...
El coste de no usar integración continua
Java – ejercicio 2
Encadenamiento de refactorings para generar cambios Agiles de Diseño
Análisis estático de código en Java
Testing & debugging lightning web components
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
Tema 2 implementar el demo zk
Selenium
Introducción a Unit Testing y TDD
Cu00612 b compilar ejecutar programa java windows consola cmd dos
No debuggearás - Introducción al Unit Testing y TDD
Instalacion de java y NetBeans
Publicidad

Similar a Taller de Simpletest - Drupal Day Valencia 2012 (20)

PDF
Unit & Integration Testing
PDF
Desarrollo con Java y metodologías agiles
PDF
Cómo diagnosticar problemas de rendimiento en entornos LAMP
PDF
ODP
Haciendo que tu entorno de desarrollo de Drupal rocks
PDF
Depuración y profiling en Drupal: casos prácticos
PPTX
Testing & Pizza by Lito & nitsnets
PPTX
Software Quality Assurance
PDF
Drupal mas que un cms
PDF
Cas2010 behavior-driven-development-aplicado-en-acceptance-test-automation
PDF
[ES] webcat 2014-03 Demystifying Development Techniques
PDF
Symfony parte 17
PDF
To mock or not to mock
PDF
Introducción a testing en php
PPTX
Herramientas Digitales
PDF
Taller evento TestingUY 2015 - Gestión de Casos de Prueba con TESTLINK
PDF
Probando aplicaciones AngularJS
PDF
DeSymfonyDay 2014 - To mock or not to mock - Spanish
PDF
DeSymfonyDay 2014 - To mock or not to mock - Spanish
Unit & Integration Testing
Desarrollo con Java y metodologías agiles
Cómo diagnosticar problemas de rendimiento en entornos LAMP
Haciendo que tu entorno de desarrollo de Drupal rocks
Depuración y profiling en Drupal: casos prácticos
Testing & Pizza by Lito & nitsnets
Software Quality Assurance
Drupal mas que un cms
Cas2010 behavior-driven-development-aplicado-en-acceptance-test-automation
[ES] webcat 2014-03 Demystifying Development Techniques
Symfony parte 17
To mock or not to mock
Introducción a testing en php
Herramientas Digitales
Taller evento TestingUY 2015 - Gestión de Casos de Prueba con TESTLINK
Probando aplicaciones AngularJS
DeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - Spanish
Publicidad

Más de Juampy NR (12)

PDF
GitHub Pull Request Builder for Drupal
PDF
Por qué Drupal es un potente gestor de contenidos
PDF
Authentication in Drupal 8 - DrupalCamp Spain 2014
PDF
Trabajar en una empresa distribuida - DrupalCamp Mexico 2014
PDF
Drupal & AngularJS - DrupalCamp Spain 2014
PDF
Drupal 8 Authentication
PDF
Symfony y Drupal - Drupal Day Santander 2013
PDF
Symfony y Drupal
PDF
Git y drupal
PDF
Learn through the issue queue
PDF
Drush workshop
PDF
Aegir: un Drupal para gobernarlos a todos
GitHub Pull Request Builder for Drupal
Por qué Drupal es un potente gestor de contenidos
Authentication in Drupal 8 - DrupalCamp Spain 2014
Trabajar en una empresa distribuida - DrupalCamp Mexico 2014
Drupal & AngularJS - DrupalCamp Spain 2014
Drupal 8 Authentication
Symfony y Drupal - Drupal Day Santander 2013
Symfony y Drupal
Git y drupal
Learn through the issue queue
Drush workshop
Aegir: un Drupal para gobernarlos a todos

Último (13)

PPTX
MOVILIZACION Y TRANSPORTE DEL ADULTO MAYOR-1.pptx
PDF
awwwwwwwwwwwwwwwwwwwwwwwwaeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
PDF
27.-PRESENTACION-SALUD-NUTRICIONAL-EN-LOS-TRABAJADORES.pdf
PPTX
PropuestaPasantiayTFG para almunado de electronica de potencia
PPTX
Presentation 4 hipermesis Gravidica ptrt
PPTX
TAREA PRÁCTICA DE LA UNIVERSIDAD BOLIBARIANA DEL ECUADOR
PPTX
ap_presentacion_taller_0620vvvvvvvvvvvvv21.pptx
PPTX
Clase Gramineas.pptx......................
DOCX
Sistemas Operativos, su importancia y objetivos.
PPTX
DEFENSA DE TESIS RIDER DUARTE año 2025..
PDF
Funciones de material didáctico para formación
PPTX
def2025SEMILLERO DE INVESTIGACION TRAZANDO RUTAS.pptx
PPTX
Emergencias-y-Urgencias-Medicas.pptx....
MOVILIZACION Y TRANSPORTE DEL ADULTO MAYOR-1.pptx
awwwwwwwwwwwwwwwwwwwwwwwwaeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
27.-PRESENTACION-SALUD-NUTRICIONAL-EN-LOS-TRABAJADORES.pdf
PropuestaPasantiayTFG para almunado de electronica de potencia
Presentation 4 hipermesis Gravidica ptrt
TAREA PRÁCTICA DE LA UNIVERSIDAD BOLIBARIANA DEL ECUADOR
ap_presentacion_taller_0620vvvvvvvvvvvvv21.pptx
Clase Gramineas.pptx......................
Sistemas Operativos, su importancia y objetivos.
DEFENSA DE TESIS RIDER DUARTE año 2025..
Funciones de material didáctico para formación
def2025SEMILLERO DE INVESTIGACION TRAZANDO RUTAS.pptx
Emergencias-y-Urgencias-Medicas.pptx....

Taller de Simpletest - Drupal Day Valencia 2012

  • 1. Drupal Day Valencia Taller de Simpletest Juan Pablo Novillo Ricardo Sanz Ante 28 de abril de 2012
  • 2. Qué es SimpleTest ● Automatización de tests. ● Un test simula una sesión de usuario en Drupal y/o llama directamente a funciones. ● Incluye un navegador web. ● Primero realizan acciones y despues verifican resultados, informando al final.
  • 3. En qué me puede ayudar ● Testear una aplicación muy rápidamente. ● Refactorizar código. ● Detectar errores con mayor antelación ● Agilizar el trabajo del departamento de calidad.
  • 4. Para qué sirve Existen 3 tipos de tests: ● Tests unitarios (funciones, clases). ● Tests funcionales (módulos, componentes). ● Tests de integración (todo un site).
  • 5. Cómo funciona ● Test unitarios: sobre la instancia real. No hay acceso a BD ni a files (Salta una excepción). ● Test funcionales: sobre una instancia nueva de Drupal en la misma BD pero con tablas con prefijo. Se debe activar cualquier módulo o configuración necesaria para los tests en los propios tests. ● Tests de integración: sobre copia exacta del sitio, con tablas con prefijo. Permite ejecutar los tests sin tener que reconfigurar el sitio ya que se mantiene la configuración.
  • 6. Ciclo de ejecución de tests Cada TestCase se compone de funciones de test (un método, un test). Cada ejecución de un test implica la creación del entorno del test, realización del test, y destrucción del entorno. Cada test se ejecuta en un entorno limpio o propio.
  • 7. Cómo empezar 1. ¿Qué es lo más importante de mi proyecto? 2. ¿Cómo puedo testearlo? 3. ¿Qué necesito para poder reproducir lo que quiero testear? 4. ¡Comencemos!
  • 8. Recursos ● Página principal de Simpletest en Drupal.org ● Assertions: listado de posibles evaluaciones con ejemplos ● API de funciones. Métodos de la clase drupal_web_test_case ● Consejos para analizar tests. ● Xdebug para analizar flujos en el código.
  • 9. Ejemplos ● Tests del módulo Twitter. Revisar su arquitectura y cómo suplanta a la API externa durante los tests. ● Verificación del roceso de registro de la web del Drupal Day Valencia con SimpleTest Clone.
  • 10. Ejercicio Añadir tests a un módulo popular de Drupal.org. Decidir en grupo entre los siguientes: ● Backup and Migrate ● Calendar ● Views Slideshow ● Site Map ● Advanced Help ● Colorbox ● Menu Block ● Email field
  • 11. Resultado del ejercicio Test funcional añadido al módulo Site map. Simula los siguientes pasos: 1. Creación de un usuario e inicio de sesión. 2. Configuración de Site map. 3. Creación de un nodo. 4. Comprobación de que el nodo aparece listado en /sitemap. http://drupal.org/node/1551940