0% encontró este documento útil (0 votos)
221 vistas9 páginas

Tu To Selenium

Selenium is an open source test automation tool for web applications that allows recording and playback of test cases without using a scripting language. It includes Selenium IDE, a record and playback tool integrated into Firefox, and Selenium Client API that allows writing tests in popular programming languages like Java, C#, Ruby, Groovy, Perl, PHP and Python. Selenium WebDriver is the successor to Selenium RC and launches a browser instance to run tests without requiring a separate server.

Cargado por

pakito13948
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
221 vistas9 páginas

Tu To Selenium

Selenium is an open source test automation tool for web applications that allows recording and playback of test cases without using a scripting language. It includes Selenium IDE, a record and playback tool integrated into Firefox, and Selenium Client API that allows writing tests in popular programming languages like Java, C#, Ruby, Groovy, Perl, PHP and Python. Selenium WebDriver is the successor to Selenium RC and launches a browser instance to run tests without requiring a separate server.

Cargado por

pakito13948
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 9

Realizado Por:

Rodrguez Garca Julio Cesar


De La Cruz Daz Francisco Javier
Medina Olgun Emmanuel
Tutorial Selenium

Verificacin y Validacin de Software
FACULTAD DE INGENIERA

UNIVERSIDAD NACIONAL
AUTNOMA DE MXICO

1. INTRODUCCIN

Selenium es un entorno de pruebas de software para aplicaciones basadas en la web.
Selenium provee una herramienta de grabar/reproducir para crear pruebas sin usar un
lenguaje de scripting para pruebas (Selenium IDE). Incluye tambin un lenguaje
especfico de dominio para pruebas (Selanese) para escribir pruebas en un amplio
nmero de lenguajes de programacin populares
incluyendo Java, C#, Ruby, Groovy, Perl, Php y Python. Las pruebas pueden
ejecutarse entonces usando la mayora de los navegadores web modernos en
diferentes sistemas operativos como Windows, Linux y OSX.

Historia
Selenium fue originalmente desarrollado por Jason Huggins en 2004 y pronto se
unieron al esfuerzo otras personas especialistas en pruebas y programacin. Es un
software decdigo abierto bajo la licencia apache 2.0 que puede ser descargada y
usada sin cargo. El nombre proviene de una broma hecha por Huggins burlndose de
un competidor llamado Mercury (mercurio) diciendo que el envenenamiento por
mercurio puede ser curado tomando complementos de Selenio. Los participantes
tomaron el nombre y siguieron con l. Existen otros proyectos que se desarrollan
alrededor de Selenium como Selenium Grid, para probar concurrencia de mltiples
pruebas concurrentes de clientes remotos o locales, as como Flash Selenium para
probar programas escritos en Adobe Flex o Selenium Silverlight
Selenium IDE
Selenium IDE es un entorno de desarrollo integrado para pruebas con Selenium. Est
implementado como una extensin de Firefox y permite grabar, editar
y depurar pruebas. Originalmente se le conoci como Selenium Recorder. Se pueden
desarrollar automticamente scripts que se pueden editar manualmente con
autocompletado de las sentencias, moviendo rpidamente comandos. Los scripts se
generan en Selanese, un lenguaje de scripting especial para Selenium. Selanese
provee comandos que ejecutan acciones sobre objetos en el navegador, como hacer
click en un enlace, seleccionar de una lista de opciones, verificar la presencia de un
texto en particular as como para tomar la totalidad de la pgina producto de las
acciones.
Caractersticas:
Grabacin y reproduccin fcil
Seleccin inteligente de campos usando ID, nombre o XPath segn se necesite.
Autocompletado de los comandos de Selenium ms comunes.
Pruebas de revisin cruzada
Depuracin y puntos de verificacacin (breakpoint)
Almacenar las pruebas como Selanese, Ruby, Java y otros formatos.
Soporte al archivo user-extensions.js
Opcin para asertar el ttulo de la pgina.

Selenium Client API
Interfaz de programacin de aplicaciones (API) de clientes Como alternativa a escribir
pruebas en Selanese, las pruebas pueden escribirse en varios lenguajes de
programacin, stos se comunican con Selenium mediante llamadas a los mtodos de
Selenium Client API. Actualmente Selenium provee API para Java, C#, Ruby y Python.
Con Selenium 2 se present una nueva API de clientes, con WebDriver como
componente central, aunque la anterior API puede seguirse usando llamando a la
clase Selenium.
Selenium Remote Control
Es un servidor escrito en Java que acepta comandos al navegador va HTTP. RC hace
posible escribir pruebas automatizadas para aplicaciones web, en cualquier lenguaje
de programacin lo que permite una mejor integracin de Selenium a entornos de
prueba existentes. Para hacer la escritura de pruebas ms fcil, Selenium actualmente
provee controladores de dispositivos para PHP, Python, Ruby,.NET, Perl y Java. El
controlador de Java puede usarse para Javascript va el motorRhino. Selenium
Remote Control fue una refactorizacin de Driven Selenium o Selenium B, la versin
original lanzaba directamente un proceso para el navegador en cuestin desde el
lenguaje de prueba; el protocolo de cable (confusamente llamado Selanese tambin en
aquel tiempo) fue reimplementado al portarse a cada lenguaje. Despus de la
refactorizacin, hubo un proceso intermediario demonio entre el script controlador y el
navegador. Los beneficios incluyeron la capacidad de controlar navegadores remotos y
reducir la necesidad de portar el cdigo a un nmero creciente de lenguajes. Con la
liberacin de Selenium 2, Selenium RC fue oficialmente descartado en favor de
Selenium WebDriver.

Selenium WebDriver
Selenium WebDriver es el sucesor de Selenium RC. Selenium WebDriver acepta
comandos (enviados en Selenese o va el API de cliente) y los enva a un navegador.
Esto se implementa a travs de un controlador del navegador especfico para cada
navegador que enva los comandos y trae los resultados de regreso. La mayora de los
controladores de navegador lanzan y acceden a la aplicacin de navegador (como
Mozilla Firefox o Internet Explorer), pero tambin hay un controlador para HtmlUnit que
simula un navegador. A diferencia de Selenium 1, donde el servidor Selenium RC era
indispensable, en Selenium WebDriver no se requiere de un servidor especial para
ejecutar las pruebas, en vez de ello WebDriver inicia una instancia del navegador y lo
controla; sin embargo puede usarse Selenium Grid (ver abajo) para ejecutar pruebas
en sistemas remotos (ver ms abajo). Desde inicios de 2012, Simon Stewart de Google
(inventor del WebDriver) y David Burns de la Fundacin Mozilla se encuentran
negociando con el W3C que WebDriver se convierta en un estndar de Internet, como
tal Selenium-Webdriver (Selenium 2.0) apunta a ser la implementacin de referencia
del estndar WebDriver en varios lenguajes de programacin. A la fecha (marzo de
2013) Selenium-WebDriver est completamente implementado y soportado en Java,
Ruby, Python y C#. En la prctica, esto significa que la API de Selenium 2.0 tiene
significativamente menos llamadas que el API de Selenium 1.0. Donde Selenium 1.0
intentaba proveer una interfaz rica en muchas operaciones, Selenium 2.0 intenta
proveer de los bloques de construccin bsicos con los cuales los desarrolladores
puedan programar su propio lenguaje especfico de dominio. Uno de ellos ya existe y
es el proyecto Watir en Ruby que tiene una historia rica en buen diseo. Watir-
WebDriver implementa el API de Watir como un envolvente del Selenium-Webdriver en
Ruby. Watir-WebDriver se crea de forma completamente automtica, basado en las
especificaciones del WebDriver y HTML.

Selenium Grid
Selenium Grid es un servidor que permite usar instancias de navegador ejecutndose
en mquinas remotas. Con Selenium Grid, uno de los servidores acta como
concentrador. Las pruebas contactan al concentrador para obtener acceso a instancias
de navegadores; el concentrador lleva una lista de instancias de los navegadores
(Nodos de WebDriver) y permiten a las pruebas usar estas instancias. Selenium Grid
permite ejecutar pruebas en paralelo en mltiples mquinas y manejar diferentes
versiones y configuraciones de manera centralizada.





























2. INSTALACIN E INTERFAZ

2.1INSTALACIN

Accedemos a la web: http://seleniumhq.org/download/ y
descargamos la versin ms reciente de Selenium IDE: "Download version
2.5.0 " desde mozilla firefox(Se trata de un plugin para dicho explorador).



2.2LA APLICACIN Y SUS CARACTERSTICAS

Selenium-IDE es un plug-in de firefox empleado para generar
automatizaciones de casos de pruebas.

Podemos abrir la aplicacin desde mozilla firefox en "Herramientas" =>
"Selenium IDE"

2.2.1.1 Barra principal

Archivo:Nos permite abrir, exportar y
guardar casos de prueba.

Editar:Recoge todas las opciones de
edicin, aparte de insercin de
acciones a realizar y comentarios.

Actions:Recopilacin de todas las
herramientas propias de la aplicacin.

Options:Nos permite ver/modificar
la configuracin de
la aplicacin y
los formatos/Lenguaje empleado en el
cdigo de la misma.
Ayuda:Referencia a UI_Elements.




2.2.1.2 URL de inicio

Nos permite especificar el link predeterminado de inicio de nuestras pruebas.


Por ejemplo:
Poniendo de URL base "http://seleniumhq.org", si accedemos al
apartado download "http://seleniumhq.org/download/", lo nico que
aparecer en la lnea de comando ser "download" debido a que entiende
que el resto del link es el URL principal.





2.2.1.3 Barra de herramientas




Control de velocidad: Permite modificar la velocidad
con la que se reproducen los casos de pruebas(Necesario
para verificar que las acciones
realizadas son las correctas).

Botones de ejecucin: Permiten la ejecucin y parada del
listado de test case.

Step: Ejecuta una sola lnea de comando.
Grabacin: Comienza la grabacin de los diversos pasos que vayamos
realizando en mozilla firefox, creando una lnea de comandos por cada
paso ejecutado.

2.2.1.4 Casos de prueba

Cada vez que grabemos alguna accin de una pgina web se
generan lneas de comando que constan de 3 atributos.
Command: Son las acciones
realizadas en cada paso(Al pinchar
en dicha columna se nos despliega
un listado con todos los
comandos reconocidos.

Target: Link o direccin desde la
cual se realiza la accin.

Value:Parmetro empleado en el
comando.

2.2.1.5 Cdigo fuente

Muestra el cdigo generado por los casos grabados, en formato HTML.



















2.2.1.6 Log

Muestra el estado de cada una de las acciones realizadas








3. GRABACIN Y EJECUCIN DE TEST CASE

3.1CREACIN DE CASOS DE PRUEBA

Cada vez que abramos Selenium IDE, por defecto, se activar el modo de
grabacin. Si no est activo, pulsar el botn de grabacin ser
Suficiente para activarlo/desactivarlo.


Las acciones ms comunes generadas cuando se graba un caso de
prueba son las siguientes:

Open: accede a un link especificado, siendo "/" el "base URL"
Click/ClickAndWait: activa/desactiva un botn o checkbox.
Type/TypeAndWait:escribe un valor "x" en el objeto seleccionado.

3.1.1.1 Adicin de acciones de contrl y variables.
























Pulsando el botn derecho en cualquier parte de la ventana abierta por
firefox podemos realizar diversas acciones de control o creacin de
variables.



Podemos organizar los comandos mostrados en 4: asssert, verify, waitfor y
store.


Assert y Verify realizan la misma funcin, es decir, comprobar
que se de una condicin concreta. La principal diferencia radica en
que con Assert en caso de que falle corta la ejecucin, mientras
que con Verify, que aunque de error, continua la ejecucin hasta
llegar al final.

WaitFor para la ejecucin hasta que se da una condicin concreta.
Store Permite almacenar los datos recopilados en variables que
pueden ser utilizados ms adelante con ${nomVar}.

3.2EJECUCIN CASOS DE PRUEBA

Una vez guardado un test case podemos ejecutarlo de forma automtica.

















Podemos ejecutar todos los casos de prueba(A) o solo el caso
de prueba seleccionado(B)



















Cada vez que finalizamos una ejecucin, nos muestra el
resultado de pasos correctos y fallados. En este caso tenemos
un error por haber escrito de forma incorrecta "Selenium".


Al volver a realizar la ejecucin con el nombre correctamente en el paso
de verificacin, queda resuelta la incidencia.




ANEXOS


4.1LISTADO DE ENLACES DE REFERENCIA.

Manual de incio de Selenium
IDE(Ingles):
http://seleniumhq.org/docs/02_selenium_i
de.html

Tutorial bsico Selenium IDE(Espaol):
http://www.jourmoly.com.ar/automatizando-pruebas-
selenium-ide/

Uso de variables en Selenium IDE(Ingles):
http://webigniter.wordpress.com/2011/04/07/storing-variables-in-
selenium-ide/

Plugin para mostrar Variables:
https://addons.mozilla.org/en-US/firefox/addon/stored-variables-
viewer-seleni/? src=search

Referencia de comandos(Ingles):
http://release.seleniumhq.org/selenium-
core/0.8.0/reference.html


Referencia de UI-
Elements(Ingles):
http://ttwhy.org/code/ui-
doc.html

También podría gustarte