Hoje abordarei de forma rápida a utilização do Selenium WebDriver juntamente com o framework de teste unitário em Java.: JUnit. O objetivo principal do Webdriver é automatizar ações executadas em diversos browsers distintos, consumindo e utilizando seus recursos nativos. Já o JUnit permite a execução e validação de testes unitários a partir de testes reproduzidos no Webdriver do Selenium.
O Selenium WebDdriver, também conhecido como Selenium 2, nasceu da fusão entre as ferramentas Selenium RC e WebDriver, logo todas as deficiências encontradas no Selenium 1 foram supridas com a utilização dos recursos do WebDriver principalmente no que tange à independência de cada navegador, substituindo o JavaScript que era embutido nas aplicações testadas. Essa característica permite a criação e execução de testes mais robustos, além de um maior controle na automação e limites de segurança impostos pelo Javascript.
Para realizar o download do Selenium WebDriver, basta acessar o link.
Se você baixou o Eclipse para executar o teste no post anterior, a última versão dessa IDE já contempla o framework JUnit não havendo a necessidade de baixá-la. Caso contrário, você pode encontrá-lo no seguinte link.
Da mesma forma que o Selenium RC, é possível realizar testes no Selenium IDE e exportá-lo para linguagem de programação da sua preferência. Portanto, vamos executar uma ação simples no site de uma calculadora online desenvolvida pelo Elias Nogueira em um de seus desafios selenium e exportar o caso de teste como.: Java / Junit / WebDriver
Posteriormente, devemos dar continuidade com os seguintes passos.:
1 - Inserir arquivo webdriver no projeto (Obs.: Não há necessidade de levantar o Servidor Selenium RC)
2 - Importar classe gerada no selenium IDE ao projeto. A classe JUnit contém sempre um método que realiza ações básicas necessárias antes do teste (setUp()) e um método que realiza verificações posteriores a execução do teste (tearDown()).
3 - Realizar alterações no código e criar casos de teste conforme necessidade. No caso, realizei da seguinte forma.:
1°) Caso de Teste Ok
2°) Caso de Teste Nok - Resultado Numérico Errado
3°) Caso de Teste Nok - Resultado Alfanumérico
4°) Caso de Teste Nok - Resultado sem valor
5 - Executar teste (Download ucSoma.java)
6 - Analisar resultados
Abaixo estou disponibilizando alguns links interessantes com vasto conteúdo para ampliar o conhecimento de quem tiver maior interesse na ferramenta.:
Testar é garantir a informação!
Mostrando postagens com marcador Selenium WebDriver. Mostrar todas as postagens
Mostrando postagens com marcador Selenium WebDriver. Mostrar todas as postagens
terça-feira, 22 de abril de 2014
sexta-feira, 21 de março de 2014
Automação de Testes Funcionais com Selenium
Ultimamente, venho pesquisando com certa frequência as ferramentas para automação de testes de software disponíveis no mercado. Após uma longa pesquisa na internet, visualização de tutoriais, opiniões e experiências de profissionais da área, optei por estudar e testar a fundo a ferramenta Selenium.
Na realidade, o Selenium é um conjunto de ferramentas "Open Source" para automação de testes em aplicações web, suportando diversos browsers, plataformas e linguagens de programação. Além disso, sua flexibilidade possibilita ao profissional realizar testes funcionais, de regressão e até mesmo de desempenho.
No conjunto de ferramentas Selenium, encontramos os seguintes componentes.:
Selenium IDE.: É um plug-in para o Firefox que permite a captura e reprodução de ações realizadas pelo usuário no navegador.
Selenium RC.: Possui uma API e bibliotecas específicas para várias linguagens de programação, além de um servidor que atua como um proxy para requisições web. O Selenium RC, também chamado de Selenium 1, executa aplicações javascript dentro do navegador.
Selenium WebDriver.: A principal função é automatizar ações de usuários em qualquer navegador utilizando recursos nativos para controlá-lo de forma direta, possibilitando adequação do código-fonte para qualquer necessidade específica juntamente com a integração de algum framework de testes unitários (como por exemplo, o JUnit). Pode-se dizer que é uma evolução do Selenium RC.
Selenium Grid.: Possibilita a distribuição de testes em diversas máquinas para execução em paralelo.
Nos próximos posts, passarei a detalhar a instalação, configuração e a utilização de cada um dos componentes do Selenium. A idéia é explicar de forma simples o conceito de cada componente com exemplos práticos associados.
Testar é garantir a informação!
Na realidade, o Selenium é um conjunto de ferramentas "Open Source" para automação de testes em aplicações web, suportando diversos browsers, plataformas e linguagens de programação. Além disso, sua flexibilidade possibilita ao profissional realizar testes funcionais, de regressão e até mesmo de desempenho.
No conjunto de ferramentas Selenium, encontramos os seguintes componentes.:
Selenium IDE.: É um plug-in para o Firefox que permite a captura e reprodução de ações realizadas pelo usuário no navegador.
Selenium RC.: Possui uma API e bibliotecas específicas para várias linguagens de programação, além de um servidor que atua como um proxy para requisições web. O Selenium RC, também chamado de Selenium 1, executa aplicações javascript dentro do navegador.
Selenium WebDriver.: A principal função é automatizar ações de usuários em qualquer navegador utilizando recursos nativos para controlá-lo de forma direta, possibilitando adequação do código-fonte para qualquer necessidade específica juntamente com a integração de algum framework de testes unitários (como por exemplo, o JUnit). Pode-se dizer que é uma evolução do Selenium RC.
Selenium Grid.: Possibilita a distribuição de testes em diversas máquinas para execução em paralelo.
Nos próximos posts, passarei a detalhar a instalação, configuração e a utilização de cada um dos componentes do Selenium. A idéia é explicar de forma simples o conceito de cada componente com exemplos práticos associados.
Testar é garantir a informação!
Assinar:
Postagens (Atom)
