Buscar

Selenium1.1 1

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Solução para testes de aceitação.
Fazer os testes de aceitação em aplicações web é bastante trabalhoso por conta do grande quantidade de cenários de teste e também a complexidade relacionada a diferentes fatores como: múltiplas camadas de programação, múltiplos servidores, tempos de resposta diferentes etc.
Além disso a cada nova versão lançada existe um conjunto de funcionalidades que sempre precisam ser testadas repetidas vezes, fora as novas funcionalidades que foram adicionadas e que também precisam ser testadas. Ao olharmos esse cenário fica clara a dificuldade, o trabalho e retrabalho que estes testes exigem é muito oneroso considerando o tempo de mão de obra gasto para executar as tarefas. E o problema não para por aí, veremos logo que existem outras questões relacionadas a testes realizados de forma manual.
Então, Já deu pra observar que são muitos os problemas relacionados aos testes de aceitação em ambientes web. A solução para estes dilemas surgiu em 2004, em Chicago – Estados Unidos, o desenvolvedor Jason Huggins apresentou a ferramenta a seus colegas que se entusiasmaram com a praticidade e retorno imediato da ferramenta. Logo o Selenium se tornou uma promissora ferramenta para automação de testes em ambientes web.
O Selenium é uma ferramenta gratuita e open source que permite realizar testes funcionais em aplicações web de forma automatizada. Isso permitiu que o trabalho repetitivo e oneroso de testar as mesmas funcionalidades passou a ser realizado de forma automatizada pelo Selenium. 
Máquina vs Humano
Há claras vantagens em se utilizar uma ferramenta que automatize os testes:
Propensão ao erro: 
Tarefas repetidas são sujeitas a erros, nesse caso significa o testador ignorar ou esquecer parte do que precisa ser testado. O que não ocorre com testes automatizados. Os computadores não falham em testes bem construído, assim o tester se ocupa apenas em definir bem seus casos de teste.
Limites Humano:
A capacidade de teste do ser humano é limitada. Se hoje um testador testa 5 funcionalidades por hora, é muito provável que amanhã e depois ele continue testando a mesma quantidade no mesmo intervalo de tempo. 
Essa deficiência é suprida pela característica multitarefa dos computadores, onde é possível realizar uma bateria de testes ou mesmo criar baterias de testes e paralelizar a execução, aumentando exponencialmente a capacidade de realização de testes. Ou seja o computador é capaz de realizar muito mais tarefas em menos tempo.
Redução de testes de Regressão: 
Com ferramentas de automação de testes é possível, sempre que necessário, executar testes em todas as funcionalidades, novas e pré-existentes. Assim, quando há uma nova versão a ser testada os erros gerados pela inclusão de novas funcionalidades são identificados sem a necessidade de o testador elaborar novos testes.
Existem formas de uso do Selenium: Selenium IDE, Selenium RC e o Selenium WebDriver
Selenium IDE: 
É uma ferramenta que permite a rápida prototipagem de scripts de testes. É um plugin do Firefox que possibilita gravar o comportamento do usuário: página que ele acessou, textos escritos em formulários, cliques em links e botões etc. Depois de gravadas, estas ações podem ser exportadas para um script de teste em diversas linguagens de programação: Java, Python, Perl, JavaScript etc. Além disso os testes podem ser executados dentro da própria IDE no FireFox, porém o uso é restrito a esse navegador. Logo o Selenium IDE ganha muita importância como formatador de testes, já que possibilita um prototipagem rápida e capacidade de exportar os testes para outras ferramentas como veremos.
Vantagens: 
A instalação é local e simples.
É muito fácil de usar.
Permite gravar sessões de teste para uso posterior.
Permite exportar as sessões de teste como arquivos fonte Java, C#, Perl, PHP, Python e Ruby, que podem ser usados pelo Selenium RC.
Excelente para quem inicia o uso do Selenium.
Não é preciso saber programar.
Desvantagens:
Funciona como plugin apenas no FireFox.
Possui algumas limitações para testes mais complexos.
Pode apresentar o mesmo comportamento irregular relatado no item Selenuim Core.
Selenium RC (Remote Control) - (Programa de teste + Proxy)
Selenium RC funciona em um servidor Java, onde você consegue enviar comandos em várias linguagens (o desenvolvimento do programa de teste pode variar de linguagem), elas são traduzidas e então utilizadas para manipular o navegador através de um proxy através de JavaScript. 
Existem algumas vantagens em relação ao uso do Selenium IDE:
Vantagens:
Você tem total poder sobre a linguagem de programação além da variedade de linguagens disponíveis tornando o mais acessível e poderoso quanto a complexidade dos testes.
Suporte para todos os navegadores exceto os mobiles. (É um diferencial importante em relação ao IDE que só funciona no Firefox) isso garante uma maior abrangência dos testes desenvolvidos.
É possível importar os testes gerados pelo Selenium IDE.
Muito mais flexível e poderoso. Pode evoluir até para grandes suítes de testes, integração contínua, geração de relatórios.
Desvantagens:
A instalação e configuração do ambiente é trabalhosa.
Pode ser mais complicado escrever os testes a partir do “zero”.
É considerado um sistema legado, já que há pouco ou praticamente nenhum desenvolvimento em andamento com essa abordagem. Por se tratar de um sistema legado é importante conhecermos, pois as suítes de testes nessa abordagem serão migradas em algum momento para um novo modelo. (Ressaltando aqui o uso dos formatadores como o Selenium IDE, utilizados nessa tarefa de migração.
Selenium WebDriver
Como dito anteriormente o Selenium é uma ferramenta open source, e recebe contribuições significativas da comunidade. A última grande colaboração foi feita pela google, que desenvolveu uma nova ferramenta chamada Selenium WebDriver. O Selenium WebDriver pode ser considerado uma evolução do Selenium RC, já que apresentou significativas melhorias em relação ao funcionamento do Selenium RC. A principal mudança é a ausência da necessidade do servidor já e proxy para controle remoto do browser, e isso desencadeia diversas vantagens e facilidades em relação ao uso do Selenium RC.
Vantagens: 
Não existe mais a dependência de um servidor Java 
Integração com o browser é muito melhor, já que os navegadores não são mais controlados remotamente via JavaSrcipt, agora cada navegador possui o seu próprio driver. Torna-se ainda melhor pois há a participação das distribuidoras de browsers no desenvolvimento dos drivers de seus respectivos navegadores, como é o caso da google e outra de relevância.
Integração com navegadores de dispositivos móveis.
Facilidade de integração com IDEs de desenvolvimento e diversas linguagens, já que os drives são arquivos .jar que podem rodar em variados sistemas operacionais (OS) e até mesmo em máquinas virtuais.

Continue navegando