Qualidade não é um destino, é uma jornada
Centro de Treinamento Oficial
Hands on Selenium
Centro de Treinamento no Estado de São Paulo
Exclusivamente Dedicado a Teste de Software e
Garantia da Qualidade
1º
Bem Vindos!
• Iterasys ( iterasys.com.br )– Fundada em 2006– Missão
Ser o centro de excelência na capacitação de empresas e profissionais em controle e garantia da qualidade
– Serviços• Treinamento• Consultoria (Coaching e Mentoring)
– Centro Oficial de Treinamento
3
Apresentações
• Instrutor: Elias Nogueira
4
– Arquiteto de Teste de Software
– Instrutor de Teste de Software na Iterasys
– Pós Graduado em Teste de Software
– CSTE – Certified Software Tester
– http://sembugs.blogspot.com
Hands on Selenium
Selenium IDE
Seleniun Remote Control
5
O que é o Selenium
Selenium é uma suite de ferramentas para automatizar
testes através de diversas plataformas
Selenium é executado:– em diversos browsers– em diversos sistemas operacionais– algumas linguagens de programação– e alguns frameworks de teste
Principais aplicações
Selenium GridEstende o Sel RC para distribuir os testes em diversosservidores para diminuir o tempo de execução dos testes
Selenium RC (Remote Control)Executa testes em diversos browsers, plataformas oucontrola os testes em alguma linguagem de programação
Selenium IDEAdd-on do Firefox para gravar todas as ações de umapágina web para criar e executar testes
Outros projetos...
Selenium on RubySérie de gems para habilitar a execução de scripts do Selenium em Ruby
Selenium on RailsProvê a criação de testes para Rails
Selenium CoreSistema de teste baseado em Javascript.
CubicTestInterface gráfica para a criação de testes para Selenium e Watir de forma intuitiva
Como trabalhar com Selenium???
Como trabalhar com Selenium???
Como trabalhar com Selenium???
Hands on Selenium IDE
• Instalação• Gravando e executando testes• Selenese, a linguagem do Selenium• Assert x Verify• Comandos “AndWait”• Comandos “WaitFor”• XPath
Hands on Selenium RC
• Execução via linha de comando• Execução via Java
– Iniciando o servidor via programação– TestCase
Caso de Teste
• Para executar uma automação funcional é altamente recomendado não utilizar o Caso de Teste para guiar o teste automatizado
Caso de Teste
• Para executar uma automação funcional é altamente recomendado não utilizar o Caso de Teste para guiar o teste automatizado
Caso de Teste
• Para executar uma automação funcional é altamente recomendado utilizar o Caso de Teste para guiar o teste automatizado
Hands on Selenium RC
• Execução via linha de comando
java -jar selenium-server.jar -htmlSuite "*browser" “baseURL" “Suite" “Resultados"
java -jar selenium-server.jar -htmlSuite "*firefox" “http://meusite.com.br" “C:\script\suite.html" “C:\script\resultado.html"
Hands on Selenium RC
• Execução via Java– Modo 1
• Estender a classe SeleneseTestCase– Instancia automaticamente o Selenium– Possui métodos de assertEquals– Necessário iniciar o servidor via linha de comando
– Modo 2• Instanciar todas as classes “na mão”
– Controle total sobre as classes– Pode-se criar frameworks ou padrões
– Pontos em comum• Utilização de setUp() e/ou tearDown()
Hands on Selenium RC
• Execução via Java– Instanciando um objeto Selenium
Selenium selenium = new DefaultSelenium (servidor, porta, browser, url)
Selenium selenium = new DefaultSelenium (“localhost”, 4444, “*firefox”, “http://minhapagina.com.br”)
selenium.start()selenium.stop()
Hands on Selenium RC
• Execução via Java– Instanciando um objeto SeleniumServer
SeleniumServer server = new SeleniumServer()
server.start()server.stop()
Dúvidas???
• Onde obter ajuda:– Selenium Google User Group:
http://groups.google.com/group/selenium-users– Selenium Documentation:
http://seleniumhq.org/docs/– Felip Knorr Kuhn:
http://knorrium.info/– The Automated Tester:
http://www.theautomatedtester.co.uk/– The Evil Tester:
http://www.eviltester.com/– Official Selenium Blog: http://seleniumhq.wordpress.com/