introduction selenium webdriver selenium tutorial 8
Introdução ao Selenium WebDriver:
Anteriormente em esta série , publicamos tutoriais que focam mais em Selenium IDE e seus vários aspectos . Apresentamos a ferramenta e discutimos seus recursos. Nós também construímos alguns scripts usando Selenium IDE e Firebug . De lá, passamos para diferentes tipos de elementos da web disponíveis e seus localizando estratégias .
Agora que estamos bem familiarizados com o Selenium IDE, vamos mover nossa curva de aprendizado para a criação de scripts de automação mais avançados usando Selenium WebDriver . WebDriver é uma das ferramentas de teste de automação mais atraentes. Vamos discutir isso em detalhes.
O que você aprenderá:
- Introdução ao Selenium WebDriver
- Arquitetura WebDriver
- Recursos do Selenium WebDriver
- Conclusão
- Leitura recomendada
Introdução ao Selenium WebDriver
WebDriver é uma das ferramentas mais poderosas e populares do kit de ferramentas Selenium. O WebDriver vem como uma versão estendida do Selenium RC com vantagens supérfluas e aborda muitas de suas limitações. O WebDriver estende seu suporte a muitos navegadores e plataformas mais recentes, ao contrário do Selenium IDE. O WebDriver também não exige que o servidor Selenium seja iniciado antes da execução dos scripts de teste, ao contrário do Selenium RC.
O Selenium RC em agregação com a API WebDriver é conhecido como Selenium 2.0. O Selenium foi desenvolvido para suportar páginas da web dinâmicas e chamadas Ajax. Ele também oferece suporte a vários drivers para realizar testes móveis baseados na web.
Arquitetura WebDriver
WebDriver é uma ferramenta de teste baseada na web com uma diferença sutil com o Selenium RC. Visto que a ferramenta foi construída sobre o fundamento onde um cliente isolado foi criado para cada um dos navegadores da web; nenhum JavaScript pesado foi necessário, como discutimos em nosso primeiro tutorial.
O WebDriver faz chamadas diretas para o navegador da Web e todo o script de teste é executado dessa maneira. O WebDriver usa o suporte e os recursos do navegador para automação.
Ao contrário do Selenium RC, o Selenium WebDriver não requer que o Selenium Server seja iniciado antes de iniciar a execução do script de teste. O usuário pode aproveitar o benefício e pode ou não exigir o Selenium Server se desejar realizar a execução do teste na mesma máquina onde o navegador está residindo.
Casos excepcionais quando o Selenium Server é necessário com o WebDriver:
- Quando o usuário deseja executar scripts de teste na máquina remota.
- Quando o usuário deseja executar scripts de teste no driver HtmlUnit.
- Quando o usuário deseja executar scripts de teste em várias plataformas.
WebDriver é uma estrutura puramente orientada a objetos que funciona na camada do sistema operacional. Ele utiliza a compatibilidade nativa do navegador para automação sem usar qualquer entidade periférica. Com o aumento da demanda, ele ganhou uma grande popularidade, base de usuários e se tornou, de longe, uma das ferramentas de teste de automação de código aberto mais amplamente usadas.
Recursos do Selenium WebDriver
Compatibilidade do navegador
O WebDriver oferece suporte a uma ampla variedade de navegadores da web e suas versões. Ele suporta todos os navegadores convencionais, além de alguns navegadores únicos e raros, como o navegador HtmlUnit, ao contrário do Selenium RC e do Selenium IDE.
O navegador HtmlUnit executa os scripts de teste de forma análoga a outros navegadores, exceto pelo fato de que é executado no modo headless, ou seja, no modo sem interface gráfica do usuário e o usuário não será capaz de visualizar a execução do script de teste. Disse que a execução do script de teste ocorre em modo headless, portanto a velocidade de execução aumenta e acelera a execução.
O WebDriver também oferece suporte a testes móveis baseados na web. Portanto, ele fornece o AndroidDriver e o IphoneDriver para apoiar testes móveis baseados na web.
Observação: WebDriver não suporta novos navegadores prontamente.
Suporte de linguas
No início das sessões, aprendemos a criar scripts usando a funcionalidade de gravação e reprodução. Também vimos como criá-los manualmente usando comandos Selenese. Ao criar esses scripts de teste, encontramos várias restrições.
Algumas das limitações impostas pelo Selenium IDE são:
- Não suporta iterações e declarações condicionais
- Não suporta loops
- Não suporta tratamento de erros
- Não suporta dependência de script de teste
Os impedimentos acima podem ser resolvidos de forma programática. O WebDriver facilita ao usuário escolher entre as diferentes linguagens de programação e construir seu script de teste na linguagem designada.
As linguagens de programação com suporte do Selenium WebDriver são:
- Java
- C #
- PHP
- Pérola
- Rubi
- Pitão
Assim, o usuário pode escolher qualquer uma das linguagens de programação (desde que a linguagem seja suportada pelo WebDriver) com base em sua competência e pode começar a construir scripts de teste.
Velocidade
Quando comparado a outras ferramentas da suíte Selenium, WebDriver acaba sendo a ferramenta mais rápida de todas. A comunicação não é canalizada através de qualquer intervenção externa; em vez disso, a ferramenta se comunica diretamente com o navegador da mesma forma que a de qualquer usuário. Assim, o WebDriver aproveita a compatibilidade nativa do navegador para a automação.
Outras ferramentas do pacote Selenium, como Selenium RC, não se comunicam diretamente com o navegador da web. Bibliotecas cliente (os scripts de teste são escritos em qualquer linguagem de programação) se comunicam com o servidor de controle remoto Selenium e o controle remoto se comunica com um Selenium Core (programa JavaScript) que, por sua vez, se comunica com o navegador da web. Conseqüentemente, esse tipo de comunicação distorcida resulta em um obstáculo na velocidade de execução.
Drivers, métodos e classes
O WebDriver oferece uma ampla gama de soluções para alguns desafios potenciais em testes de automação. Isso nos ajuda a lidar com tipos complexos de elementos da web, como caixas de seleção, menus suspensos e alertas com a ajuda de localizadores dinâmicos.
Com o advento da era móvel, a API WebDriver também amadureceu e introduziu algumas das principais tecnologias para entrar nesse horizonte. O WebDriver permite que o usuário execute testes móveis baseados na web. Ele fornece dois dos drivers essenciais para a realização de testes móveis baseados na web.
- AndriodDriver
- IphoneDriver
Além disso, a API WebDriver é bastante simples e fácil. Não inclui comandos repetitivos. Pelo contrário, Selenium RC incorpora muitos dos comandos tautológicos.
Conclusão
Neste tutorial, tentamos familiarizá-lo com o Selenium WebDriver descrevendo sua arquitetura, recursos e limitações.
Aqui estão os pontos principais deste artigo.
- O pacote Selenium é composto por 4 componentes básicos; Selenium IDE, Selenium RC, WebDriver, Selenium Grid.
- O WebDriver permite que um usuário execute testes de automação baseados na web. O WebDriver é uma ferramenta totalmente diferente, com várias vantagens em relação ao Selenium RC.
- O WebDriver oferece suporte a uma ampla variedade de navegadores da web, linguagens de programação e ambientes de teste.
- O WebDriver se comunica diretamente com o navegador da web e usa sua compatibilidade nativa para automatizar.
- O suporte do WebDriver não limita apenas na periferia das ações tradicionais do usuário. Em vez disso, ele suporta mecanismos de manuseio eficientes para ações complexas do usuário, como lidar com menus suspensos, chamadas Ajax, alternar entre janelas, navegação, lidar com alertas etc.
- O WebDriver permite que o usuário execute testes móveis baseados na web. Para suportar o mesmo, WebDriver apresenta AndroidDriver e IphoneDriver.
- O WebDriver é mais rápido do que outras ferramentas do Selenium Suite porque faz chamadas diretas para um navegador sem qualquer intervenção externa.
Próximo Tutorial # 9 : No próximo tutorial, estaríamos discutindo o procedimento de instalação para começar a usar o WebDriver começando do zero. Também estaríamos discutindo o ampla gama de drivers fornecidos pelo WebDriver , cada um atendendo a necessidades diferentes.
geralmente, a maioria dos erros (defeitos) são encontrados em quais dois períodos de teste?
Até o momento em que nosso próximo tutorial estiver em construção, os leitores podem visitar o site oficial do Selenium. Uma documentação detalhada com referência ao Selenium WebDriver está implementada em seu site oficial.
Se você tiver quaisquer solicitações / dúvidas específicas sobre este ou qualquer outro tutorial nesta série de treinamento online Selenium, deixe-nos saber nos comentários .
Leitura recomendada
- Implementação do nosso primeiro script WebDriver - Selenium WebDriver Tutorial # 10
- Tutorial Cucumber Selenium: Cucumber Java Selenium WebDriver Integration
- Configuração e instalação completas do WebDriver com Eclipse - Selenium Tutorial # 9
- Verifique a visibilidade dos elementos da Web usando vários tipos Comandos do WebDriver - Selenium Tutorial nº 14
- Scripts Eficientes do Selenium e Cenários de Solução de Problemas - Tutorial # 27 do Selenium
- Depurando Scripts Selenium com Logs (Tutorial Log4j) - Tutorial Selenium # 26
- 30+ Melhores Tutoriais de Selênio: Aprenda Selênio com Exemplos Reais
- Como lidar com alertas / pop-ups no Selenium WebDriver - Tutorial do Selenium nº 16