SlideShare una empresa de Scribd logo
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Selenium
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Contenido
1.- Qué es Selenium
2.- Entornos
3.- Herramientas
4.- Selenium IDE
5.- Selenium WebDriver
6.- Selenese
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Qué es Selenium
● Selenium es un entorno de pruebas funcionales de
software para aplicaciones basadas en la web.
● Se ejecuta sobre un navegador real.
● Soporta múltiples plataformas.
● Pueden ser implementados por no-programadores.
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Entornos
● Firefox, Internet Explorer (6 - 10), Safari (5.1+),
Opera (12.x y anteriores) y Chrome.
● Windows (XP, 7, 8 y 8.1), Apple OS X y Linux.
● C# (NUnit), Haskell, Java (JUnit, TestNG), JavaScript,
Objetive-C, Perl, PHP, Pyton (unittest, pyunit), R,
Ruby (RSpec, Test::Unit)
● Integración con Maven, Hudson, Jenkins...
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Herramientas
● Selenium IDE. Plugin para Firefox.
● WebDriver. Driver Selenium que envía comandos
al navegador.
● Selenium Grid. Servidor que permite ejecutar
pruebas en paralelo en múltiples máquinas y en
con diferentes versiones.
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Selenium IDE
● Plugin para Firefox.
● Permite grabar, reproducir, editar y exportar las
acciones realizadas sobre una página.
● Permite la depuración y puntos de verificación.
● Permite exportar las las pruebas en diferentes
formatos como XML, Java (JUnit, TestNG), Ruby
(Rspec, Test::Unit), C# (Nunit) y Pyton (Unitest)
● No son necesarios conocimientos de
programación.
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Selenium IDE
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Selenium WebDriver
Selenium WebDriver
● Servidor que envía comandos a un navegador.
● Utiliza una aplicación basada en HtmlUnit para simular
el nevegador.
● Proporciona controladores nativos que dan soporte a
distintos navegadores (InternetExplorer, Firefox,
Chrome...)
● Provee controladores de dispositivos para PHP, Pyton,
Ruby, .NET, perl y Java.
● API sencilla. Dispone de dos clases principales,
WebDriver y WebElement.
● Permite selenium en dispositovos móviles.
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Selene - Comandos
●open: Abre una URL.
●click: Hace click sobre un elemento de la
pantalla.
●type: Escribe en un campo.
●clickAndWait: Hace click sobre un elemento de
la pantalla y espera a que se cargue una nueva
página
●verifyTitle: verifica el título esperado de la
página.
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Selene - Comandos
●assertTitle: verifica el título esperado de la
página abortando el test en caso de error.
●verifyTextPresent: comprueba que el texto
indicado exista en la página.
●verifyElementPresent: comprueba la
existencia de una etiqueta HTML en la página.
●verifyText: Comprueba la existencia de un texto
en una determinada etiqueta HTML.
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Selene - Comandos
●waitForPageToLoad: Espera a que cargue una
página, se puede indicar el tiempo máximo de
espera en milisegudos.
●waitForElementPresent: Espera hasta que se
cargue una determinada etiqueta HTML, se
puede indicar el tiempo máximo de espera en
milisegudos.
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Selene - Localizadores
Algunos de estos comandos tendrán como parámetro un target, una etiqueta o tipo
de etiquetas HTML, sobre el que realizarán la acción o verificación. Las etiquetas se
podrán identificar de varias formas:
●Por id, busca el primer elemento cuyo id coincida con el identificador indicado.
● Id=idFormulario
●Por nombre, busca el primer elemento cuyo name coincida con el indicado. Permite
indicar valores.
● name=nombre
● name=login type=submit
● name=login type=button
●Por ruta XPath
● xpath=/html/body/form[1]
● xpath=//form[@id='idFormulario']
● xpath=//form[input/@name='nombre']
●Seguir un enlace a partir de su texto.
● link=Ayuda
● Localización por DOM mediante el uso de document
● dom=document.getElementById('idFormulario')
● dom=document.forms['idFormulario']
● dom=document.forms[0].nombre
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Selene - Localizadores
1 <html>
2 <body>
3 <form id="idFormulario">
4 <input name="nombre" type="text" />
5 <input name="password" type="password" />
6 <input name="login" type="submit" value="Login" />
7 <input name="login" type="button" value="Clear" />
8 </form>
9 <a href="help.html">Ayuda</a>
10 <a href="contact.html">Contacto</a>
11 </body>
12 </html>
© 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas.
Fin
Gracias por vuestra atención
¿Alguna pregunta?
José Manuel Robles Muñoz (josemanuelrm@um.es)José Manuel Robles Muñoz (josemanuelrm@um.es)

Más contenido relacionado

PDF
En 20 minutos ... Como se hizo LooWID.com
PDF
En 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyecto
DOCX
¿Qué es Java?
PPTX
2-Unidad 1: Introducción a la Plataforma .NET-1.1 Conceptos, características...
PPTX
1-Unidad 1: Introducción a la Plataforma .NET-1.1 Conceptos, características ...
PPTX
3-Unidad 1: Introducción a la Plataforma .NET-1.2 Compònentes del Framework ....
PPTX
6-Unidad 1: Introducción a la Plataforma .NET-1.3 Aplicaciones en C# .NET-Des...
PPTX
Introducción a Silex
En 20 minutos ... Como se hizo LooWID.com
En 20 minutos ... Sonar Qube: cómo de bueno es el código de tu proyecto
¿Qué es Java?
2-Unidad 1: Introducción a la Plataforma .NET-1.1 Conceptos, características...
1-Unidad 1: Introducción a la Plataforma .NET-1.1 Conceptos, características ...
3-Unidad 1: Introducción a la Plataforma .NET-1.2 Compònentes del Framework ....
6-Unidad 1: Introducción a la Plataforma .NET-1.3 Aplicaciones en C# .NET-Des...
Introducción a Silex

Destacado (18)

PPTX
Revisión de código fuente de manera ágil
ODP
MEDEA contada a los alumnos de Grado de Ingeniería Informática
PDF
En 20 minutos ... Tests de Aceptación con Cucumber
PDF
En 20 minutos ... Técnicas SEO - Mejorando la Visibilidad de nuestra Web
PDF
Medea. Metodología de desarrollo en ÁTICA
PDF
Revisión de código fuente de manera ágil
MEDEA contada a los alumnos de Grado de Ingeniería Informática
En 20 minutos ... Tests de Aceptación con Cucumber
En 20 minutos ... Técnicas SEO - Mejorando la Visibilidad de nuestra Web
Medea. Metodología de desarrollo en ÁTICA
Publicidad

Similar a En 20 minutos ... Charla selenium (20)

PPTX
Distintas Herramientas Tecnológicas en la Actualidad
PPTX
Introducción al Análisis y Desarrollo de Software.pptx
PPTX
Cobertura de pruebas unitarias - NetBaires
PPTX
Cobertura de pruebas unitarias en C#
PDF
Deletreando Android
PDF
Cómo agregar calidad a sus aplicaciones mediante pruebas
PPT
Vbnetclass
PDF
Desarrollo de aplicaciones .net
PDF
Desarrollo de aplicaciones .net
PDF
Aplicaciones Móviles Híbridas
PDF
Herramientas Tecnológicas.pdf
PDF
Las mejores herramientas para realizar pruebas de software
PDF
Colorful Modern Clean Mind Map Graph.pdf
DOCX
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...
DOCX
R esume libro el gran libro de android
PPTX
Herramientas Digitales
PPT
2015 presentation corporate_alfa9_cast
PDF
Desarrollo rápido de apps web con laravel - DevAcademy
PPTX
Herramientas Tecnologicas Virtuales
PDF
Programacion web java
Distintas Herramientas Tecnológicas en la Actualidad
Introducción al Análisis y Desarrollo de Software.pptx
Cobertura de pruebas unitarias - NetBaires
Cobertura de pruebas unitarias en C#
Deletreando Android
Cómo agregar calidad a sus aplicaciones mediante pruebas
Vbnetclass
Desarrollo de aplicaciones .net
Desarrollo de aplicaciones .net
Aplicaciones Móviles Híbridas
Herramientas Tecnológicas.pdf
Las mejores herramientas para realizar pruebas de software
Colorful Modern Clean Mind Map Graph.pdf
Proyecto de Aplicación-Implementación de una INTRANET = Colegio Sagrado Coraz...
R esume libro el gran libro de android
Herramientas Digitales
2015 presentation corporate_alfa9_cast
Desarrollo rápido de apps web con laravel - DevAcademy
Herramientas Tecnologicas Virtuales
Programacion web java
Publicidad

Último (20)

PDF
Plantilla para Diseño de Narrativas Transmedia.pdf
PPTX
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
PPTX
Presentación PASANTIAS AuditorioOO..pptx
PDF
SAP Transportation Management para LSP, TM140 Col18
PPT
Que son las redes de computadores y sus partes
PDF
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
PPTX
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PPTX
Presentación de Redes de Datos modelo osi
PPTX
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
PPTX
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
PPTX
Propuesta BKP servidores con Acronis1.pptx
PDF
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
PPTX
Power Point Nicolás Carrasco (disertación Roblox).pptx
PDF
Maste clas de estructura metálica y arquitectura
PDF
Estrategia de apoyo tecnología miguel angel solis
PPTX
REDES INFORMATICAS REDES INFORMATICAS.pptx
PDF
Estrategia de apoyo tecnología grado 9-3
DOCX
Zarate Quispe Alex aldayir aplicaciones de internet .docx
Plantilla para Diseño de Narrativas Transmedia.pdf
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
Presentación PASANTIAS AuditorioOO..pptx
SAP Transportation Management para LSP, TM140 Col18
Que son las redes de computadores y sus partes
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
Presentación de Redes de Datos modelo osi
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
historia_web de la creacion de un navegador_presentacion.pptx
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
Propuesta BKP servidores con Acronis1.pptx
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
Power Point Nicolás Carrasco (disertación Roblox).pptx
Maste clas de estructura metálica y arquitectura
Estrategia de apoyo tecnología miguel angel solis
REDES INFORMATICAS REDES INFORMATICAS.pptx
Estrategia de apoyo tecnología grado 9-3
Zarate Quispe Alex aldayir aplicaciones de internet .docx

En 20 minutos ... Charla selenium

  • 1. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Selenium
  • 2. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Contenido 1.- Qué es Selenium 2.- Entornos 3.- Herramientas 4.- Selenium IDE 5.- Selenium WebDriver 6.- Selenese
  • 3. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Qué es Selenium ● Selenium es un entorno de pruebas funcionales de software para aplicaciones basadas en la web. ● Se ejecuta sobre un navegador real. ● Soporta múltiples plataformas. ● Pueden ser implementados por no-programadores.
  • 4. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Entornos ● Firefox, Internet Explorer (6 - 10), Safari (5.1+), Opera (12.x y anteriores) y Chrome. ● Windows (XP, 7, 8 y 8.1), Apple OS X y Linux. ● C# (NUnit), Haskell, Java (JUnit, TestNG), JavaScript, Objetive-C, Perl, PHP, Pyton (unittest, pyunit), R, Ruby (RSpec, Test::Unit) ● Integración con Maven, Hudson, Jenkins...
  • 5. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Herramientas ● Selenium IDE. Plugin para Firefox. ● WebDriver. Driver Selenium que envía comandos al navegador. ● Selenium Grid. Servidor que permite ejecutar pruebas en paralelo en múltiples máquinas y en con diferentes versiones.
  • 6. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Selenium IDE ● Plugin para Firefox. ● Permite grabar, reproducir, editar y exportar las acciones realizadas sobre una página. ● Permite la depuración y puntos de verificación. ● Permite exportar las las pruebas en diferentes formatos como XML, Java (JUnit, TestNG), Ruby (Rspec, Test::Unit), C# (Nunit) y Pyton (Unitest) ● No son necesarios conocimientos de programación.
  • 7. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Selenium IDE
  • 8. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Selenium WebDriver Selenium WebDriver ● Servidor que envía comandos a un navegador. ● Utiliza una aplicación basada en HtmlUnit para simular el nevegador. ● Proporciona controladores nativos que dan soporte a distintos navegadores (InternetExplorer, Firefox, Chrome...) ● Provee controladores de dispositivos para PHP, Pyton, Ruby, .NET, perl y Java. ● API sencilla. Dispone de dos clases principales, WebDriver y WebElement. ● Permite selenium en dispositovos móviles.
  • 9. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Selene - Comandos ●open: Abre una URL. ●click: Hace click sobre un elemento de la pantalla. ●type: Escribe en un campo. ●clickAndWait: Hace click sobre un elemento de la pantalla y espera a que se cargue una nueva página ●verifyTitle: verifica el título esperado de la página.
  • 10. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Selene - Comandos ●assertTitle: verifica el título esperado de la página abortando el test en caso de error. ●verifyTextPresent: comprueba que el texto indicado exista en la página. ●verifyElementPresent: comprueba la existencia de una etiqueta HTML en la página. ●verifyText: Comprueba la existencia de un texto en una determinada etiqueta HTML.
  • 11. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Selene - Comandos ●waitForPageToLoad: Espera a que cargue una página, se puede indicar el tiempo máximo de espera en milisegudos. ●waitForElementPresent: Espera hasta que se cargue una determinada etiqueta HTML, se puede indicar el tiempo máximo de espera en milisegudos.
  • 12. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Selene - Localizadores Algunos de estos comandos tendrán como parámetro un target, una etiqueta o tipo de etiquetas HTML, sobre el que realizarán la acción o verificación. Las etiquetas se podrán identificar de varias formas: ●Por id, busca el primer elemento cuyo id coincida con el identificador indicado. ● Id=idFormulario ●Por nombre, busca el primer elemento cuyo name coincida con el indicado. Permite indicar valores. ● name=nombre ● name=login type=submit ● name=login type=button ●Por ruta XPath ● xpath=/html/body/form[1] ● xpath=//form[@id='idFormulario'] ● xpath=//form[input/@name='nombre'] ●Seguir un enlace a partir de su texto. ● link=Ayuda ● Localización por DOM mediante el uso de document ● dom=document.getElementById('idFormulario') ● dom=document.forms['idFormulario'] ● dom=document.forms[0].nombre
  • 13. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Selene - Localizadores 1 <html> 2 <body> 3 <form id="idFormulario"> 4 <input name="nombre" type="text" /> 5 <input name="password" type="password" /> 6 <input name="login" type="submit" value="Login" /> 7 <input name="login" type="button" value="Clear" /> 8 </form> 9 <a href="help.html">Ayuda</a> 10 <a href="contact.html">Contacto</a> 11 </body> 12 </html>
  • 14. © 2014. Área de las Tecnologías de la Información y las Comunicaciones Aplicadas. Fin Gracias por vuestra atención ¿Alguna pregunta? José Manuel Robles Muñoz (josemanuelrm@um.es)José Manuel Robles Muñoz (josemanuelrm@um.es)