Selenium IDE
Adelino P Mazuti
Conteúdo programado
● Perfil Analista de Teste
● Por que usar o Selenium IDE
● Apresentação da Ferramenta
● Extensões do Usuário (user-extensions)
● Prática
Perfil do Analista de teste
● Curioso
● Concentrado
● Ágil
● Comunicativo
● Detalhista
● Ferramenta simples de fácil manuseio
● Agilidade
● Testes repetitivos
● Testes de Regressão
Por que usar o Selenium IDE
● Open Source
● Plugin FF
● Record and Play
● Suites de teste
● Gera código de saída para outras linguagens(Ruby,
Java, etc)
● Users Extensions
● Documentação
o http://release.openqa.org/selenium-core/1.0/reference.html
Apresentação da ferramenta
Comandos mais usados
● open
o abre uma página usando uma URL
● type
o preenche um elemento(input) de uma página
● click/ clickAndWait
o clica em um elemento/ clica e aguarda (padrão 30 seg = 30000 miliseg.)
● verifyTitle/assertTitle
o verifica um título esperado na página
● verifyTextPresent
o verifica um texto esperado em algum lugar na página
● verifyElementPresent
o verifica se um element0 (xpath) esta presente na página
Comandos mais usados
● verifyText
o verifica se o texto esperado está na página
● assertTextPresent
o Afirma que o texto esperado esta na página
● waitForPageToLoad
o interrompe a execução do teste até que a página carregue
● waitForElementPresent
o interrompe a execução do teste até que um elemento de interface carregue
Extensões do usuário(UserExtensions)
● Linguagem - JavaScript
● Formato .js
o user-extensions.js
Selenium.prototype.doGerarNome = function(locator)
{
var n1 = Math.floor(Math.random()*100);
var nome
var element = this.page().findElement(locator);
var nome = "José"+ (n1);
if (n1 == 24)
n1 ++;
var valueToType = nome;
this.page().replaceText(element,
valueToType);
Automatizar execução
- Selenium RC
● Requisições JS
● Start/Stop browser
● Varias linguagens
o http://www.seleniumhq.org/projects/remote-control/
- Requisitos:
● Java
● JDK
Automatizar execução
- Como rodar?
● Prompt de comando do windows (cmd)
o java -jar "pathselenium-server-standalone-2.37.0.jar" -multiwindow -htmlsuite "*firefox"
"http://www.minhapag.com.br" "pathnome_suite.html" "pathnome_resultado.html"
● .bat
o criar um arquivo .bat os comandos:
 echo Suite x
 java -jar "pathselenium-server-standalone-2.37.0.jar" -multiwindow -htmlsuite "*firefox"
"http://www.minhapag.com.br" "pathnome_suite.html" "pathnome_resultado.html"
 Stop
o para mais de uma suite, é só replicar a linha “java -jar”
o Gerenciador de tarefas do windows
● Jenkins
o Plugin - Hudson Seleniumhq plugin
Prática
Vamos usar!
Dúvidas?

Selenium ide

  • 1.
  • 2.
    Conteúdo programado ● PerfilAnalista de Teste ● Por que usar o Selenium IDE ● Apresentação da Ferramenta ● Extensões do Usuário (user-extensions) ● Prática
  • 3.
    Perfil do Analistade teste ● Curioso ● Concentrado ● Ágil ● Comunicativo ● Detalhista
  • 4.
    ● Ferramenta simplesde fácil manuseio ● Agilidade ● Testes repetitivos ● Testes de Regressão Por que usar o Selenium IDE
  • 5.
    ● Open Source ●Plugin FF ● Record and Play ● Suites de teste ● Gera código de saída para outras linguagens(Ruby, Java, etc) ● Users Extensions ● Documentação o http://release.openqa.org/selenium-core/1.0/reference.html Apresentação da ferramenta
  • 6.
    Comandos mais usados ●open o abre uma página usando uma URL ● type o preenche um elemento(input) de uma página ● click/ clickAndWait o clica em um elemento/ clica e aguarda (padrão 30 seg = 30000 miliseg.) ● verifyTitle/assertTitle o verifica um título esperado na página ● verifyTextPresent o verifica um texto esperado em algum lugar na página ● verifyElementPresent o verifica se um element0 (xpath) esta presente na página
  • 7.
    Comandos mais usados ●verifyText o verifica se o texto esperado está na página ● assertTextPresent o Afirma que o texto esperado esta na página ● waitForPageToLoad o interrompe a execução do teste até que a página carregue ● waitForElementPresent o interrompe a execução do teste até que um elemento de interface carregue
  • 8.
    Extensões do usuário(UserExtensions) ●Linguagem - JavaScript ● Formato .js o user-extensions.js Selenium.prototype.doGerarNome = function(locator) { var n1 = Math.floor(Math.random()*100); var nome var element = this.page().findElement(locator); var nome = "José"+ (n1); if (n1 == 24) n1 ++; var valueToType = nome; this.page().replaceText(element, valueToType);
  • 9.
    Automatizar execução - SeleniumRC ● Requisições JS ● Start/Stop browser ● Varias linguagens o http://www.seleniumhq.org/projects/remote-control/ - Requisitos: ● Java ● JDK
  • 10.
    Automatizar execução - Comorodar? ● Prompt de comando do windows (cmd) o java -jar "pathselenium-server-standalone-2.37.0.jar" -multiwindow -htmlsuite "*firefox" "http://www.minhapag.com.br" "pathnome_suite.html" "pathnome_resultado.html" ● .bat o criar um arquivo .bat os comandos:  echo Suite x  java -jar "pathselenium-server-standalone-2.37.0.jar" -multiwindow -htmlsuite "*firefox" "http://www.minhapag.com.br" "pathnome_suite.html" "pathnome_resultado.html"  Stop o para mais de uma suite, é só replicar a linha “java -jar” o Gerenciador de tarefas do windows ● Jenkins o Plugin - Hudson Seleniumhq plugin
  • 11.
  • 12.