Selenium teve sua
origem em 2004, quando Jason Huggins fazia testes internos na ThoughtWorks (<3 ), e
percebeu que os mesmos tomavam grande parte de seu tempo. Então desenvolveu uma
biblioteca em JavaScript que conduzia as interações em uma pagina web
permitindo executar seus testes de forma automática em vários navegadores. Após sucessivos
aprimoramentos esta biblioteca veio a se tornar o Selenium Core, que hoje faz
parte do Selenium RC e IDE. Por volta de 2006, um engenheiro
da Google, começou a trabalhar em um projeto chamado WebDriver. A Google na época era uma grande usuária do Selenium, porem como o mesmo
utilizava JavaScript tinha algumas limitações em quesitos como segurança. O
WebDriver tinha o objetivo de sanar estas limitações do Selenium.
Em 2008 ocorreu a fusão
entre o Selenium e WebDriver, provendo aos dois projetos recursos adicionais
para seus usuários e melhorias nos serviços. Hoje o Selenium é
largamente utilizado e vem se aprimorando ao decorrer do tempo. Grupos
autônomos também desenvolvem aplicações e plug-ins para dar suporte ao
Selenium, as quais podem ser verificadas na página oficial da ferramenta [http://seleniumhq.org/]. Basicamente, o Selenium é um framework para desenvolvimento e automatização de testes funcionais de aplicações, onde estes testes podem ser desenvolvidos diretamente no navegador ou então através de linguagens de programação. A ferramenta está disponível em três formas: Selenium IDE, Selenium RC e Selenium Grid. O Selenium IDE é apresentado como sendo um plug-in para o Firefox, nele é possível realizar testes interagindo diretamente com o navegador web. O Selenium RC possibilita rodar grupos de testes (suite) que podem ter sidos criados pela IDE ou através de linguagens de programação suportadas, sendo elas: C#, Java, Python, Ruby entre ambientes de testes derivados destas linguagens. E por ultimo, o Selenium Grid que basicamente permite rodar testes em paralelo.
Para realizar a instalação no Windows são necessários os
seguintes componentes.
·
Selenium
IDE
·
Selenium
RC
·
Java
Development Kit (JDK)
·
Firefox
Inicialmente
é necessário ter instalado o Java na máquina a ser utilizada assim como o navegador
Firefox. Como
dito anteriormente, o Selenium IDE foi desenvolvido como sendo um plug-in para
o Firefox, e assim sendo, após obter o arquivo ele pode ser instalado a partir
do menu ‘Componentes’ no próprio
Firefox. É necessário reiniciar o navegador após a instalação para que a
ferramenta possa ser utilizada, ela pode ser acessada através do menu ‘Desenvolvedor’.
Para
o Selenium RC não é necessário instalação, pois ele está disponibilizado como
um arquivo ‘jar’ podendo ser executado diretamente. O
Selenium RC é executado a partir da linha de comando, e para isto, é necessário
fazer a adição do Java às bibliotecas do Windows, para que ele possa usar na
execução do programa. Um tutorial completo para fazer esta configuração
encontra-se em (http://richardikeda.com/blog/java-compilando-pelo-prompt.html).
O Selenium IDE é uma
ferramenta para automação de testes baseado na técnica “Record and Play”.
Basicamente, o usuário ‘grava’ uma sessão realizada no navegador e após é
possível fazer com que a ferramenta repita todos os passos feitos anteriormente
de forma automatizada.
A ferramenta também
permite fazer alteração das ações gravadas, assim como a verificação de valores
gerados a partir dessas ações. Através da IDE é possível fazer isto facilmente
somente selecionando os itens da página desejados no próprio navegador e
marcando o comando necessário, já que todas as ações são gravadas. Possui uma interface simples
e não é necessário o domínio de uma linguagem de programação para sua
utilização, porém, para realização de testes mais complexos é aconselhado um
conhecimento mais abrangente de seus comandos.
Figura
1. Interface do Selenium IDE.
A imagem ilustra a
interface principal do Selenium IDE onde:
1.
Local destinado aos casos de testes.
2.
Local destinado à exibição dos comandos
gravados em uma seção no navegador.
3.
Local destinado a informações sobre os
comandos e outras em geral.
4.
É possível fazer a edição de comandos
neste local.
5.
Botões utilizados para execução dos
testes.
6.
Menus disponíveis na ferramenta.
Os
testes são gerados como uma tabela em um arquivo ‘html’ e podem ser
visualizados em qualquer navegador. A ferramenta também oferece a opção de
exportar os testes para as linguagens suportadas (Java, C#, Phyton, etc...).
Figura 2. Exemplo de um Teste gerado
pela Ferramenta.
A
tabela é gerada com três colunas sendo nesta ordem cada uma responsável por
armazenar o comando, componente e valor. Note que nem sempre um valor é
necessário. Já
o Selenium RC é um servidor escrito em Java que recebe chamadas de um arquivo
de testes e se comunica diretamente com o navegador executando essas chamadas e
fazendo os testes propostos. Ele
permite que os testes sejam feitos em outros navegadores que não sejam o
Firefox, aonde a IDE está disponível. Além disso, ele possibilita que se façam
testes de forma interativa, ou seja, digitando os códigos e executando-os
passo-a-passo.
O
Selenium RC é executado a partir da linha de comando e são necessários alguns
parâmetros expostos a seguir:
java -jar selenium-server.jar -multiwindow
-htmlSuite <Navegador> <Pagina de Testes> <Casos de Teste>
<Resultados>
Onde:
Navegador: É o navegador onde os testes serão
realizados.
(Ex: "*iexplore" |
"*chrome")
Pagina de Testes: Identifica a página alvo dos
testes.
(Ex:
“http://www.google.com”)
Casos de Testes: Arquivo que contém os casos de
testes.
(Ex:
“teste.html”)
Resultados: Arquivo onde os resultados serão
gravados. É aconselhável identificar este arquivo com o navegador utilizado.
(Ex:
“FFResults.html” | “IEResults.html”)
Para a execução de um caso de testes no
Firefox, por exemplo, o comando ficaria desta forma:
java -jar
selenium-server.jar -multiwindow -htmlSuite "*chrome"
"http://www.google.com" "Testes.html" "FFResults.html"
.
Nenhum comentário:
Postar um comentário