Watir

Web Application Testing in Ruby

Watir = Web Application Testing in Ruby

Pronunciado igual que "Water"

Es una familia de bibliotecas bajo la Licencia BSD para el lenguaje de programación Ruby que automatiza la operación de los navegadores web.

Al momento de ésta edición, Watir permite automatizar Internet Explorer, Mozilla Firefox, Google Chrome y Safari

Disponible como una Gema de Ruby.

Watir fue desarrollado inicialmente por Bret Pettichord y Paul Rogers, aunque al ser un proyecto abierto, tiene una lista creciente de participantes.

Watir

  1. Interactuar con el navegador de la misma forma que lo haría un usuario
  2. Interpretar todos los elementos de HTML de la página de manera que pueden ser externamente interpretados e incluso manipulados.

 

Esto permite escribir scripts que manejen la ejecución automatizada de casos de prueba en la validación y verificación de funcionalidad de sistemas escritos para el navegador.

Watir

Funcionalidad

Watir-Classic hace uso de la funcionalidad de Incrustado y enlazado de objetos que Ruby tiene integrada. Por tanto es posible manejar el Internet Explorer programáticamente. Watir-Classic opera diferente de otras herramientas de pruebas basadas en HTTP que emulan la existencia de un navegador, en vez de ello, Watir-Classic efectivamente inicia una instancia del navegador a través del protocolo OLE que está implementado sobre la arquitectura COM.

COM permite la comunicación entre procesos (por ejemplo entre Ruby e Internet Explorer) y la creación y manipulación dinámica de objetos, que es lo que hace Ruby con el Internet Explorer.

Watir

Watir-Classic

Watir-webdriver es una versión moderna del API de Watir basada en Selenium. Selenium 2.0 (Selenium-webdriver) intenta ser la implementación de referencia para la especificación WebDriver. En el caso de Ruby, Jari Bakken el API de Watir como un envolvente ("wrapper") alrededor del API de Selenium 2.0.


Dado que Watir-Webdriver es derivado tanto de Selenium 2.0 como de la especificación de HTML Watir-Webdriver debe ser siempre compatible con las especificaciones del W3C.

Watir

Watir-webdriver

Watir-rspec es una especificación automatizada del API de Watir. Se utiliza con la herramienta de testing Rspec que implementa Behavior Driven Development (BDD).

Watir

Watir-rspec

Es una gema para el framework de desarrollo de aplicaciones web Ruby on Rails para implementar Watir en el mismo.

Watir

Watir-rails

Watir

Ejemplos

Watir

Alternativas

1. Celerity: es similar a Watir, pero emula un navegador en vez de navegar en uno real.
2. Vapir: es un fork de Watir con arreglos a fallas, cambios de API y nuevas funcionalidades.
3. WatiN: de las siglas Web Application Testing In .NET. Es similar a Watir, solo que está implementada en el Framework .NET
4. Watij: de las siglas Web Application Testing in Java. Es similar a Watir, solo que está implementada en Java.
5. Win32::Watir Es similar a Watir, pero está implementada en Perl.
7. Selenium: es un Framework de testing portable para aplicaciones web.
8. iMacros: similar a Watir, pero esta incluye grabaciones visuals, soporte para web scrapping y un objeto COM para uso de cualquier lenguaje de programación. (Sólo para Windows)

Watir

Capybara

Gracias!

Brian Díaz
Jordani Rozón

Made with Slides.com