• Save
Taller Testing en Grails con Grails y Geb (WebDriver) - Springio I/O 2011
Upcoming SlideShare
Loading in...5
×
 

Taller Testing en Grails con Grails y Geb (WebDriver) - Springio I/O 2011

on

  • 1,337 views

 

Statistics

Views

Total Views
1,337
Views on SlideShare
1,332
Embed Views
5

Actions

Likes
0
Downloads
0
Comments
0

2 Embeds 5

http://www.linkedin.com 4
https://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Taller Testing en Grails con Grails y Geb (WebDriver) - Springio I/O 2011 Taller Testing en Grails con Grails y Geb (WebDriver) - Springio I/O 2011 Presentation Transcript

  • Testing en Grails y Pruebas funcionales con Geb (WebDriver) Fátima Casaú Pérez @fatimacasau
    • @fatimacasau
    • 3 años desarrollando aplicaciones web con J2EE, Groovy & Grails
    • 3 años en
    • SCJP J2SE 5.0
    • Curso ScrumManager – Gestión Proyectos con Scrum
  • ¿Qué vamos a ver?
    • Tests Unitarios
      • De dominio
      • De constraints
      • De controller
    • Tests de Integración
    • Tests Funcionales
      • Geb
  • Tests Unitarios
    • Mocks: Simuladores de Objetos
      • Grails nos ofrece:
        • mockDomain
        • mockForConstraints
        • MockController
          • redirectArgs
          • renderArgs
        • mockParams
        • mockFor
        • ...
  • Tests de Integración
    • Comprueban la integración entre todos los componenetes de la aplicación
    • Más pesados y lentos
    • Se ejecutan menos veces
  • Tests Funcionales
    • En este punto ya podremos probar el interfaz gráfico así como toda la funcionalidad de la aplicación. Varias opciones:
        • Selenium-IDE + Grails Plugin Selenium-rc (Selenium1)
        • Grails Plugin GEB (WebDriver, jQuery API)
          • + Grails Plugin Spock
  • GEB
    • WebDriver
        • Navegadores: Firefox, Chrome, IE
        • HTMLUnit
        • jQuery API (inspección y navegación html)
        • Lenguaje Groovy
        • Documentación: http://geb.codehaus.org
  • El Navegador def browser = new Browser(" http://myapp.com ") browser.go("/signup") browser.go("/signup", param1: "value1", param2: "value2") Browser.drive("http://myapp.com") { go "/signup" }
  • Páginas
    • Page Object Pattern
      • Nos proporcionan:
        • modularidad,
        • encapsulación,
        • reutilizable
  • Páginas Import geb.* class GoogleHomePage extends Page { static url = "http://google.com" static at = { title == "Google" } static content = { searchField { $("input[name=q]").value() } searchButton(to: GoogleResultsPage) { $("input[value=Google Search]") } } }
  • Páginas def browser = new Browser("http://myapp.com") browser.to(SignupPage) assert browser.at(SignupPage)
  • $(“title”).text() == “Inspeccionando el contenido”
      • $(“div.message”, text:contains(“Todo Ok”))
        • StartsWith, iStartsWith, contains, iContains, endsWith, iEndsWith, containsWord, iContainsWord
      • $(“li a”).size()
      • $(“p”, 0).text()
      • $("div").find(".b") --> $("div").filter(".b")
      • $("input.loginButton").click(LoginPage)
  • Javascript y Ajax
    • Javascript:
        • js.'nombreVariable'
        • js.'nombreFuncion(params)
    • Contenido dinámico
        • waitFor(condicion), waitFor(tiempo(seg),condicion)
        • alert()
        • Confirm()
    • jQuery
        • $("div#a").jquery.mouseover()
  • Ejemplo
    • Aplicación Grails de ejemplo:
    • Grails Blog
  • Más en: http://blogs.salenda.es/fatimacasau