Teste Watir

11

Click here to load reader

Transcript of Teste Watir

Page 1: Teste Watir

Web Application Testing in Ruby

Page 2: Teste Watir

RubyRuby foi apresentada ao público pela primeira vez em 1995, pelo seu criador: Yukihiro Matsumoto, mundialmente conhecido como

Ruby é uma linguagem totalmente orientada a objetos(diferente de Java que possui por ex. tipos primitivos), com tipagem forte e dinâmica.

Curiosamente é uma das únicas linguagens nascidas fora do eixo EUA

Uma de suas principais características é a expressividade que possui. Teve-se como objetivo desde o início que fosse uma lingu

Hellow World.rb

puts "Olá Mundo"

Page 3: Teste Watir

Rails

é um framework de desenvolvimento web escrito na linguagem Ruby. Ele é designado para tornar a programação de aplicações web

Rails é um software com opinião. Isto é, ele supõe que existe um modo melhor para fazer as coisas, e ele é desenhado para enc

Se você aprender “O Modo Rails” vai provavelmente descobrir um aumento tremendo de produtividade. Se persistir em trazer velh

A filosifia Rails inclui diversos princípios como:

DRY – “Don’t Repeat Yourself” – sugere que escrever o mesmo código várias vezes é uma coisa ruim.

Convenção ao invés de Configuração – significa que o Rails faz suposições sobre o que você quer fazer e como você estará fazendo isto, em vez de deixá

REST é o melhor modelo para aplicações web – organizar sua aplicação em torno de recursos e verbos HTTP padrão é o modo mais rápido

Page 4: Teste Watir

Watir

Imagine poder simular através de código Ruby os passos de um usuário acessando o browser, clicando em links, ou preenchendo f

Isso facilitaria muito o teste de aplicações para web, não é mesmo? Seus problemas acabaram, pois é justamente isso que o

Na prática, é como se você programasse um robozinho para acessar o navegador e realizar algumas tarefas, como clicar num dete

Page 5: Teste Watir

require 'watir'

Watir::Browser.default = 'firefox'

ff = Watir::Browser.new

ff.goto "http://www.twitter.com"

Page 6: Teste Watir

Os motivos para usar o Watir são:

É uma ferramenta open source e não há custos para usar;

A comunidade do Watir está crescendo e é muita ativa;

Ele usa Ruby, uma linguagem de script moderna e completa e que possui uma baixa curva de aprendizado (em comparação com Java,

Ele suporta qualquer aplicação web, não importando a linguagem na qual ela foi desenvolvida;

O Watir suporta múltiplos browsers e diferentes plataformas;

Ele é poderoso, fácil de usar e ainda é bem leve.

Page 7: Teste Watir

o que precisamos saber para criar o nosso próprio teste usando o Watir é o seguinte:

O valor da propriedade name dos elementos que iremos ter que interagir para poder fazer os passos do nosso teste (o desenvolved

Numa rápida pesquisa, parece que existem IDEs de record-play (estilo o Selenium IDE) para o Watir, porém nenhuma é mantida ofic

A API do Watir, basicamente conhecer quais são os métodos que podemos usar, quando usar e quais parâmetros passar;

A linguagem Ruby, mas calma não precisa aprender toda a linguagem de uma vez, vá com calma, comece primeiro com exemplos bási

Page 8: Teste Watir

Vamos realizar um teste básico com o Watir:

O objetivo será inserir um texto no campo de busca do Google e verificar se ele confere com o esperado.

Page 9: Teste Watir

# Exemplo de uso do Watir

# Objetivo: Executar as seguintes tarefas:

# * inserir um texto no campo de buscas

# * clicar no botão

# * verificar se o resultado confere

# O teste irá buscar pelo nosso site (ruby-br)

# iniciando o watir

require "watir"

# definindo o site na variável

teste_site = "http://blogsearch.google.com.br/"

# definindo o firefox como navegador (e já iniciando ele)

Watir::Browser.default = 'firefox'

browser = Watir::Browser.new

# exibe ação na tela

puts "Iniciando o teste: busca no Google Blogs Search."

puts " Passo 1: acessando o site para o teste: " + teste_site

browser.goto teste_site

puts " Passo 2: inserir 'ruby brasil' no campo de busca."

browser.text_field(:name, "q").set "ruby brasil"

# "q" é o nome do campo de texto do Google

puts " Passo 3: clicar no botao 'Pesquisar blogs'."

browser.button(:name, "btnG").click

# "btnG" é o nome do botão

puts " Resultado Esperado:"

puts " Uma pagina de resultados deve ser apresentada. 'Ruby Brasil' devera estar na lista."

puts " Resultado Obtido:"

if browser.text.include? "Ruby Brasil"

puts " Aprovado no teste. Localizado o texto: 'Ruby Brasil'. O resultado atual confere com o resultado esperado."

else

puts " Falha no teste! Nao foi encontrado: 'Ruby Brasil'."

end

puts "Fim do teste: busca no Google Blogs Search."

Page 10: Teste Watir
Page 11: Teste Watir