Testes Automáticos com o Selenium
Quarta, 21 de Maio de 2008 às 16:02 admin | Enviar por e-mail Hits para esta publicação: 138
Quinta-feira, 21 de maio de 2008 por Thiago Kaneto
O Selenium é uma ferramenta desenvolvida pela OpenQA, que auxilia os testes automáticos em aplicações Web (HTTP), fácil de entender, possui interface gráfica, e pode ser programada em diversas linguagens por desenvolvedores e testadores.
Esta ferramenta pode ser executada sobre os navegadores Internet Explorer, Mozilla, Firefox para Windows, Linux, Macintosh, e no Safari para Mac.
Gravando e executando Testes com o Selenium (IDE)
Para conhecer a interface do Selenium de forma rápida, instale o navegador Firefox e, após o término da instalação, abra o navegador Firefox e clique no link do Selenium IDE, que pode ser encontrado na página de downloads da OpenQA.
A ferramenta instalada pode ser encontrada dentro do Firefox, através do Menu -> Ferramentas -> Selenium IDE.
Este aplicativo permite gravar e executar alguns testes de forma simples e rápida, além de permitir com que os desenvolvedores aprendam com o código-fonte gerado pelo aplicativo, em diversas lingüagens.
A imagem a seguir é uma gravação realizada sobre a página atual do Google:
Programando Testes com o Selenium RC (Remote Control)
No caso de testes de aplicações web mais complexas, eventualmente encontramos a necessidade de realizar consultas a banco de dados, ou a outros sistemas integrados. Nestes casos, talvez seja interessante integrar os testes do Selenium IDE a um ambiente de programação de escolha pessoal.
Neste caso, a instalação e a utilização do Selenium RC pode ser uma boa alternativa, pois ele permite executar o código-fonte do Selenium, dentro do ambiente e linguagem desejada pelo usuário (Java, C#, Perl, PHP, Python, ou Ruby).
Para instalá-lo, como o Selenium RC é um servidor feito em Java (Remote Control Server) que abre, manipula e fecha os navegadores, atuando nas requisições e resultado das páginas, será necessário instalar primeiro o Java Virtual Machine (JVM).
Depois de instalado, é necessário fazer o download do Selenium RC e executar o arquivo denominado selenium-server.jar, através da linha de comando a seguir: java.exe -jar selenium-server.jar.
Depois que o servidor estiver sendo executado, será necessário entrar no ambiente de programação desejado e importar as bibliotecas que estão dentro do pasta do Selenium RC para dentro do ambiente. Após a importação, o código Selenium gerado pelo Selenium IDE poderá ser copiado para o ambiente de programação e executado.
Para auxiliar o entendimento, abaixo segue uma representação arquitetural do Selenium RC:
Outros exemplos de código-fonte e o tutorial completo podem ser encontrados na página da OpenQA.
Abstração do código Selenium nos Testes Criados
A medida em que os testes começam a crescer em tamanho e quantidade, o código-fonte do Selenium começa a tornar-se extenso, podendo complicar o entendimento e a manutenção do mesmo.
Para ajudar nestes casos, o ideal seria abstrair o código Selenium e modularizá-lo em funções ou operações de negócio, para que o código final possa ser lido e compreendido por um usuário da aplicação web em teste, como abaixo:
Teste de Alteração de Dados Cadastrais de um Usuário:
1. EfetuarLoginComUsuario (usuario)
2. AlterarDadosCadastraisPara (novoCadastro)
3. ReceberEmailDoUsuario(usuario)
4. VerificarAlteracaoDosDadosCadastrais(novoCadastro)
…
Selenium e Visual Studio 2005 - Team Edition for Testers
Caso o usuário opte por utilizar a plataforma de desenvolvimento do Visual Studio com a versão do Team Edition for Testers, a mesma plataforma pode ser utilizada para para escrever, gerenciar e integrar testes unitários e de Selenium, favorecendo o controle de todos eles através desta plataforma.
Para isso, basta criar um projeto de teste no Visual Studio, criar uma Lista de Testes (vsmdi), e controlar os resultados pela tabela de resultados gerada pelo próprio Visual Studio, conforme foto abaixo:
Ao clicar sobre um teste, a janela de resultados aparece para detalhar o status do teste (aprovado, reprovado, em progresso, inconclusivo, etc.), o ponto de execução onde o programa sofreu uma eventual falha e as informações de depuração e saída do programa, conforme foto abaixo:
Selenium Grid Server
Uma das capacidades do Selenium RC é o de distribuir testes utilizando o conceito de “Grid”, permitindo disparar vários navegadores para execução de outras máquinas de testes e realizar tudo de forma mais rápida.
Assim, é possível dentro de um mesmo teste, paralelizar as simulações e receber os resultados em conjunto para a avaliação final.
Maiores informações podem ser encontradas nos links abaixo:
Página do Selenium
Página do Selenium RC
Página MSDN sobre o Team Edition for Testers
Publicação arquivada em: Tecnologia
Enviar por e-mail | Hits para esta publicação: 139




Deixe um Comentário
Linkar esta publicação | Assine os comentários via o RSS