Dando continuidade ao nosso papo sobre Selenium, nesse post mostro à vocês como o Selenium-IDE facilita nossa vida.
Basicamente podemos testar todo nosso sistema, incluir todos os scripts junto ao NUnit, JUnit, whatever… em java, C#, phyton, whatever sem tocar em uma linha de código.
A primeira coisa que precisamos é baixar o Selenium-IDE.
Ele é um plugin do firefox, então sim, você precisará ter o firefox e daí baixar o Selenium-IDE
Agora é só puxar o arquivo .xpi no firefox e ele faz o trabalho sozinho.
Ele vai pedir pra reiniciar o firefox. Depois de reiniciado, você vai encontrar no menu ferramentas, o Selenium-IDE
Clicando nele, temos a interface do Selenium IDE.
A utilização é muito intuitiva.
1. Em URL Base, coloque a url inicial que tomará por base na criação do seu script de teste.
2. No canto superior direito, tera uma bolinha vermelha (record) ou em ações > gravar.
Ao deixarmos esta opção gravada, ele passara a gravar tudo que fizermos no firefox, a partir da URL Base escolhida.
3. Acesse o site escolhido na URL Base, e comece a navegação. Todos seus movimentos (clique, escrita, etc) serão gravados no script.
Neste exemplo (onde descaradamente faço uma propaganda do meu vídeo no youtube), eu entrei no youtube, digitei “fernando ott”, e cliquei no primeiro vídeo que apareceu.
Todos estes movimentos foram gravados pelo Selenium-IDE.
Para parar a criação do script, basta deselecionar a opção de gravar.
Teremos um script semelhante a este abaixo.
Ao clicarmos na aba “Código-Fonte”, vemos que o Selenium-IDE, cria o script no formato HTML.
Exportando para Teste Unitário em C#
A maravilha do Selenium-IDE esta em seu suporte para exportar o script. Ele te da várias opções e te devolve o código bonitinho, pronto pra rodar em qualquer ambiente suportado, que são muitos.
Basta irmos em Arquivo > Exportar Teste Como… > C# (Remote Control)
Um parênteses.
(Caso prefira a criação dos testes utilizando WebDriver basta escolher a opção C# (WebDriver), entretanto só teremos o código gerado para execução no firefox.
Alerto também de um bug que encontrei no script exportado para WebDriver. Para corrigi-lo, use a variavel gerada baseUrl, no comando driver.Navigate.Open(baseUrl) que tudo funcionará =] )
Voltando, após salvo o arquivo exportado, teremos ele, funcionando perfeitamente no seu Teste Unitário NUnit/C#. Para isso garanta que tenha exportado as dll necessárias como visto no post anterior – Trabalhando com Selenium, NUnit em C#
E é isso aí pessoal.
Algumas leituras que recomendo sobre o assunto:
http://va.mu/Fsx8 (MiniCurso de Testes Funcionais utilizando Selenium)
http://www.youtube.com/watch?v=Vlz-WmcrBL8 (video SeleniumRC vs WebDriver)
Até a próxima!
Abraços