logo

Selênio WebDriver

Selenium WebDriver é o componente mais importante do conjunto de ferramentas Selenium. A versão mais recente 'Selenium 2.0' está integrada com a API WebDriver que fornece uma interface de programação mais simples e concisa.

classificar arraylist em java

A imagem a seguir lhe dará uma compreensão clara dos componentes do Selenium e das ferramentas de automação de testes.


Selênio WebDriver

O Selenium WebDriver foi introduzido pela primeira vez como parte do Selenium v2.0. A versão inicial do Selenium, ou seja, Selenium v1 consistia apenas em IDE, RC e Grid. No entanto, com o lançamento do Selenium v3, o RC foi descontinuado e movido para o pacote legado.

No WebDriver, os scripts de teste podem ser desenvolvidos usando qualquer uma das linguagens de programação suportadas e podem ser executados diretamente na maioria dos navegadores modernos. As linguagens suportadas pelo WebDriver incluem C#, Java, Perl, PHP, Python e Ruby.

Antes de aprender os conceitos do Selenium WebDriver, você deve estar bem familiarizado com qualquer uma das linguagens de programação suportadas. Atualmente, o driver Selenium Web é mais popular com Java e C#. Para este tutorial, estamos usando Selenium com java. Você pode consultar os links abaixo para aprender conceitos básicos e avançados de Java e C#:

Tutorial Java: https://www.javatpoint.com/java-tutorial

Tutorial C#: https://www.javatpoint.com/c-sharp-tutorial

O Selenium WebDriver tem um desempenho muito mais rápido em comparação com o Selenium RC porque faz chamadas diretas para os navegadores da web. O RC, por outro lado, precisa de um servidor RC para interagir com o navegador.

WebDriver possui uma implementação integrada do driver Firefox (Gecko Driver). Para outros navegadores, você precisa conectar os drivers específicos do navegador para se comunicar e executar o teste. Os WebDriver mais comumente usados ​​incluem:

  • Driver do Google Chrome
  • Driver do Internet Explorer
  • Motorista de ópera
  • Motorista Safári
  • HTML Unit Driver (um driver headless especial)

Selenium WebDriver - Arquitetura

A API Selenium WebDriver fornece facilidade de comunicação entre linguagens e navegadores.

A imagem a seguir mostra a representação arquitetônica do Selenium WebDriver.


Arquitetura Selenium WebDriver

Existem quatro componentes básicos da arquitetura WebDriver:

  • Ligações de linguagem Selenium
  • Protocolo de transmissão JSON
  • Drivers de navegador
  • Navegadores reais

Ligações de linguagem Selenium/Bibliotecas de cliente Selenium

Os desenvolvedores do Selenium criaram ligações de linguagem/bibliotecas de cliente do Selenium para oferecer suporte a vários idiomas. Por exemplo, se você quiser usar o driver do navegador em java, use as ligações java. Todas as ligações de idiomas suportadas podem ser baixadas do site oficial (https://www.seleniumhq.org/download/#client-drivers) de Selênio.

Protocolo de transmissão JSON

JSON (JavaScript Object Notation) é um padrão aberto para troca de dados na web. Ele suporta estruturas de dados como objeto e array. Portanto, é fácil escrever e ler dados do JSON. Para saber mais sobre JSON, visite https://www.javatpoint.com/json-tutorial

O protocolo JSON Wire fornece um mecanismo de transporte para transferir dados entre um servidor e um cliente. O protocolo JSON Wire serve como um padrão do setor para vários serviços da web REST. Para saber mais sobre serviços da Web, visite https://www.javatpoint.com/web-services-tutorial

Drivers de navegador

O Selenium utiliza drivers específicos para cada navegador para estabelecer uma conexão segura com o navegador sem revelar a lógica interna da funcionalidade do navegador. O driver do navegador também é específico para a linguagem usada para automação, como Java, C#, etc.

Quando executamos um script de teste usando WebDriver, as seguintes operações são realizadas internamente.

  • A solicitação HTTP é gerada e enviada ao driver do navegador para cada comando Selenium.
  • O driver recebe a solicitação HTTP por meio do servidor HTTP.
  • O servidor HTTP decide todas as etapas para executar as instruções que são executadas no navegador.
  • O status de execução é enviado de volta ao servidor HTTP, que é posteriormente enviado de volta ao script de automação.

Navegadores

Navegadores suportados pelo Selenium WebDriver:

  • Internet Explorer
  • Mozilla Firefox
  • Google Chrome
  • Safári

Selenium WebDriver – Recursos

Alguns dos recursos mais importantes do Selenium WebDriver são:

    Suporte a vários navegadores: Selenium WebDriver oferece suporte a uma ampla variedade de navegadores da web, como Firefox, Chrome, Internet Explorer, Opera e muitos mais. Ele também oferece suporte a alguns navegadores não convencionais ou raros, como HTMLUnit.

Recursos do Selenium WebDriver
    Suporte a vários idiomas: WebDriver também oferece suporte à maioria das linguagens de programação comumente usadas, como Java, C#, JavaScript, PHP, Ruby, Pearl e Python. Assim, o usuário pode escolher qualquer uma das linguagens de programação suportadas com base em sua competência e iniciar a construção dos scripts de teste.Velocidade: o WebDriver tem desempenho mais rápido em comparação com outras ferramentas do Selenium Suite. Ao contrário do RC, não requer nenhum servidor intermediário para se comunicar com o navegador; em vez disso, a ferramenta se comunica diretamente com o navegador.

Recursos do Selenium WebDriver
    Comandos Simples: A maioria dos comandos usados ​​no Selenium WebDriver são fáceis de implementar. Por exemplo, para iniciar um navegador no WebDriver são usados ​​os seguintes comandos:
    Driver WebDriver = novo FirefoxDriver(); (navegador Firefox)
    Driver WebDriver = novo ChromeDriver(); (navegador Chrome)
    Driver WebDriver = novo InternetExplorerDriver(); (navegador Internet Explorer)WebDriver – Métodos e Classes: O WebDriver fornece diversas soluções para lidar com alguns desafios potenciais em testes de automação.
    O WebDriver também permite que os testadores lidem com tipos complexos de elementos da web, como caixas de seleção, menus suspensos e alertas por meio de localizadores dinâmicos.

Recursos do Selenium WebDriver

Índice do tutorial do Selenium WebDriver


Tutorial do Selenium WebDriver

  • Localizando Estratégias
  • Localizando estratégias por ID
  • Localizando estratégias por nome
  • Localizando estratégias por nome de classe
  • Localizando estratégias por nome de tag
  • Localizando estratégias por texto de link
  • Localizando estratégias por texto de link parcial
  • Localizando estratégias por CSS
  • Localizando estratégias por XPath
  • Tratamento de menus suspensos
  • WebDriver-Arrastar e Soltar
  • Alertas de manuseio do WebDriver
  • Rolando uma página da web
  • WebDriver - Comandos do navegador
  • WebDriver - Comandos de navegação
  • WebDriver - Comandos WebElement
  • Manipulação de botões de opção
  • Caixa de seleção de tratamento
  • Afirmações de selênio
  • Grade de Selênio