Como aprender sobre Selenium (de forma gratuita ou paga)

Olá pessoal!
Recebo quase todos os dias e-mails de profissionais da área perguntando como eles podem aprender sobre Selenium e onde podem encontrar materiais.

Este post se destina a isso: como aprender Selenium de uma forma “gratuita” ou não!
Quando eu falo Selenium, na verdade estou falando de WebDriver (apesar de existirem pessoas que querem aprender sobre o Selenium IDE e vou citar isso, o foco maior é em WebDriver)

 

Aprendendo Selenium de forma gratuita

Atualmente, até onde eu sei, não existe nenhum treinamento gratuito sobre Selenium.
O aprendizado gratuito pode se dar através de:

  • Leitura da documentação
  • Leitura e entendimento da API
  • Prática
  • Apresentações
  • Desafios Selenium

 

Leitura da documentação

Existem duas documentações padrão do Selenium:

  • Através do site http://seleniumhq.org: neste site você pode acessar a ‘aba’ Documentation e ler realmente a documentação. Há muita coisa boa lá e realmente te dá uma boa base inicial

O ideal é você ler todos os documentos contidos no Wiki, mas estes itens acima já irão lhe dar um overview sobre o WebDriver

 

Leitura e entendimento da API

Com o WebDriver é inevitável: temos que programar/desenvolver nossos testes utilizando alguma linguagem de programação!
Logo é um pré-requisito que você conheça, pelo menos, o básico da linguagem de programação de sua escolha e que também saiba como ler a API (documentação das ferramentas/plugins/frameworks) implementados em uma determinada linguagem.

Podemos visualizar abaixo a lista das linguagens de programação formalmente suportadas com WebDriver e o link de cada API (documentação):

 

Prática!

Para aprendermos qualquer ferramenta não tem jeito: temos que praticar!
Logo a prática é um elemento fundamental do nosso aprendizado.
Você pode praticar em diversos sites web, mas aqui vai minha recomendação:

  • Comece a praticar em sites/aplicações simples
  • NUNCA tente praticar automatizando o login do Gmail, Yahoo! e outros…
  • Utilizar CMS ou lojas virtuais open source para praticar é uma boa. Você pode praticar num Joomla, Prestashop, por exemplo

 

Apresentações

Sempre é bom dar uma “Googleada” para encontrar apresentações ou links.
Eu recomendo dar uma olhada no SlideShare, site que contém uma gama de apresentações publicadas e diversas sobre Selenium.

 

Desafios Selenium

Foi uma iniciativa que eu criei em 2011 lançando um problema real, onde o mesmo deve ser automatizado com Selenium IDE.
Os desafios possuem a resolução explicada em vídeo, o que facilita o entendimento.
Por enquanto eu tenho somente 5 desafios e todos com respostas para o Selenium IDE, porém logo em breve voltarei a postar mais desafios em ambos os formatos: Selenium IDE e WebDriver!

 

Aprendendo Selenium de forma paga

Obviamente sempre temos alternativas pagas! Geralmente esta alternativa foca mais no que cada um precisa aprender e dependendo da forma que você escolher, um curso por exemplo, você conseguirá (ou não, pois depende de você) tirar um maior proveito e resolver problemas e dúvidas que você possa ter. O aprendizado pago pode ser:

  • Através de Cursos
  • Através de Livros

 

Através de Cursos

Existem dois treinamentos sobre WebDriver (um que cobre Selenium IDE que eu conheço), que serão listados abaixo:

 

Treinamento de Selenium WebDriver da Adaptworks

Há algum tempo eu dou treinamento sobre Selenium (na verdade desde 2008) e  vou ousar em dizer que sou a primeira pessoa a ministrar treinamentos sobre Selenium no Brasil!
Os treinamentos são no formato EAD síncrono, traduzindo, são treinamentos via videoconferência ao vivo. O aluno acessa um link onde vê a tela do instrutor e segue suas instruções. Também há treinamentos presenciais em alguns locais do Brasil.
Hoje eu oferece estes treinamentos em parceria com a Adaptworks.

Atualmente o curso é dividido em 3 módulos:

Todos os exercícios cobrem as principais dúvidas e interações que faremos na “vida real”. Os exercícios resolvidos são disponibilizados, bem como uma apostila e certificado de participação.

 

Treinamento de WebDriver (em inglês) do Alan Richardson (EvilTester)

Um cara chamado Alan Richardson, mais conhecido como EvilTester (seu blog) criou um treinamento sobre WebDriver no site Udemy.
O treinamento são video-aulas em inglês que mostram como trabalhar com o WebDriver em diversos pontos:

  • Navegação
  • Suporte dos testes com JUnit
  • Locators
  • Interações
  • RemoteWebdriver
  • CI

Link do treinamento: https://www.udemy.com/selenium-2-webdriver-basics-with-java/

 

Treinamento de WebDriver da QALab

É uma startup de treinamento em Teste de Software. Alguns dos colaboradores já tiveram aula de Selenium comigo 🙂
Eles também foram campeões mundiais da Copa do Mundo de Teste de Software 2014 e mandam muito bem na área de Teste e Qualidade de Software

Possuem dos treinamentos de Selenium:

 

Treinamento de WebDriver pela Caelum (plataforma Alura)

Este treinamento faz parte de uma Trilha de diversos cursos voltados a Teste de Software. O treinamento “Testando Sua Aplicação Web com Selenium” tem 12h e vai te dar um visão básica e avancada (Page Objects).

Link do treinamento: http://www.alura.com.br/cursos-online-agile/selenium

 

Através de Livros

Existem livros muito bacanas sobre Selenium, mas infelizmente para alguns estes livros são em inglês (pra quem não consegue ler livros em inglês ainda fica o incentivo para aprender!)

 

Livro Selenium Simplified

Este livro é do mesmo autor do curso do Udemy que eu coloquei acima: Alan Richardson. Este livro sobre a utilização do Selenium RC/WebDriver utilizando Java e JUnit.
É muito parecido com o próprio treinamento que o autor tem, mas os itens cobertos no livro possuem mais detalhes.

Link da página do livro: http://www.compendiumdev.co.uk/selenium/

 

Livro Selenium Testing Tools Cookbook

Este livro mostra, além do básico de programação com WebDriver, problemas reais e como resolvê-los.

Também apresenta como fazer integrações de ferramentas de BDD e ATDD, como executar testes no Selenium Grid, como capturar evidências e como executar testes em browsers de dispositivos móveis (Android e iOS)

Link da página do livro: http://www.packtpub.com/recipes-to-master-selenium-2-testing-tools-cookbook/book

 

Livro Selenium 2 Testing Tools

Este livro é de autoria de um dos commiters do Selenium: David Burns. Neste livro o autor aborda todos os conceitos  básicos do WebDriver unidos a alguns Design Patters para ajudar o leitor a desenvolver melhor usando o WebDriver.

Link da página do livro: http://www.packtpub.com/selenium-2-testing-tools-beginners-guide/book

 

Livro Selenium Testing Tools Starter

 

Este livro é introdutório para aqueles que querem aprender sobre Selenium/WebDriver.
Traz um capítulo sobre Selenium IDE (!), fala bem pouco sobre WebDriver e já ensina sobre Page Objects.
Na minha opinião o livro é bem confuso e traz uma sensação de não aprendizado ao leitor por colocar muito conceitos para alguém que está iniciando.

Link para página do livro: http://www.packtpub.com/selenium-testing-tools-starter/book

 

Livro Selenium WebDriver Practical Guide

 

Este livro é bem bacana, onde considero para um aprendizado intermediário (para quem já iniciou a utilização de Selenium/WebDriver).
Há algumas sessões neste que não fazem parte do conteúdo da ferramenta como “Dealing with I/O” e itens que já estão sendo removidos como “Testing iOS and Android Apps”, bem como os capítulos 1 e 7 que tratam de Selenium 1.0 e WebDriverBackedSelenium (que dificilmente são utilizados hoje em automação profissional).
Recomendo a compra deste livro pois possui capítulos bem interessantes.

Link para página do livro: http://www.packtpub.com/selenium-webdriver-practical-guide/book

 

Livro Selenium Design Patters and Best Practices

Este livro considero para quem já utiliza Selenium no dia a dia e quer aprender sobre alguns padrões boas práticas (que é o foco do livro). Além de Page Objects você vai aprender sobre Data Driven e algumas técnicas interessantes.

Link para página do livro: https://www.packtpub.com/web-development/selenium-design-patterns-and-best-practices

Até breve!

Espero que este post seja de grande ajuda aqueles que desejam iniciar o aprendizado do Selenium.
Qualquer dúvida ou sugestões de links, cursos e livros deixem um comentário neste post 🙂

Abraços!

7 thoughts to “Como aprender sobre Selenium (de forma gratuita ou paga)”

  1. Para fazer autenticação NTLM tu precisas, no Firefox, criar um profile já com a configuração de acesso neste profile. Depois basta chamar o profile no momento da execução.
    Olá anonimo!

    Com outros browsers tu deves utilizar a classe DefaultCredentialsProvider para efetuar a autenticação.
    O link abaixo mostra um exemplo utilizando o HtmlUnitDriver
    https://code.google.com/p/selenium/wiki/FrequentlyAskedQuestions#Q:_How_do_I_handle_authentication_with_the_?

    A execução a partir de um browser já aberto depende na verdade da forma com que tu estás construindo o teste.
    Se tu deseja executar um teste “completo”, ou como alguns chamam no mercado de End2End (E2E) ou “Fim-a-Fim” o ideal é tu dar uma olhada sobre PageObjects e criar criar os testes como se fosse em uma unica classe de teste.

    Se tu tens problemas com isso referente a questão de autenticação (do WebDriver abrir diversas vezes o browser e todo vez pedir autenticação), tu consegues resolver com a resposta da primeira pergunta. Se for questão de sessão tu também consegues resolver.

  2. Olá Elias,

    Estou a um tempo procurando sobre 2 assuntos a respeito do Selenium e não consigo uma solução.

    1- Como fazer autenticação NTLM com o Selenium no IE, Firefox e Chrome.

    2- Como executar testes a partir de um browser já aberto?

    Você saberia me passar alguma dica de onde posso encontrar?

  3. Olá Elias,

    Estou a um tempo procurando sobre 2 assuntos a respeito do Selenium e não consigo uma solução. Você saberia me passar alguma dica de onde posso encontrar?

    1- Como fazer autenticação NTLM com o Selenium no IE, Firefox e Chrome.
    2- Como executar testes a partir de um browser já aberto?

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *