Articles

O que é o selénio? Introdução ao teste de automatização do selénio

o que é o selénio?

selênio é um framework de testes automatizado livre (open-source) usado para validar aplicações web em diferentes navegadores e plataformas. Você pode usar várias linguagens de programação como Java, C#, Python etc para criar Scripts de teste de selênio. Testing done using the Selenium testing tool is usually referred to as Selenium Testing.

selénio Software não é apenas uma única ferramenta, mas um conjunto de software, cada peça que atende a diferentes necessidades de teste de QA de selénio de uma organização. Aqui está a lista de ferramentas

  • Selênio Ambiente de Desenvolvimento Integrado (IDE)
  • Selenium de Controle Remoto (RC)
  • WebDriver
  • Selenium Grid

Introdução ao Selênio
Introdução ao Selênio

No momento, o Selenium RC e WebDriver são mesclados em um único quadro para formar o Selênio 2. Selénio 1, A propósito, refere-se ao selénio RC.

Clique aqui se o vídeo não é acessível

neste tutorial, você vai aprender:

  • o Que é o Selênio?quem desenvolveu selénio?nascimento do selénio nascimento do selénio nascimento do selénio nascimento do selénio nascimento do selénio nascimento do selénio nascimento do selénio nascimento do selénio
  • Breve Introdução Selenium IDE
  • Breve Introdução o Selênio Controle Remoto (Selenium RC)
  • Breve Introdução WebDriver
  • Selenium Grid
  • Nota no Navegador e Ambiente de Suporte
  • Como Escolher o Direito de Selênio Ferramenta para a Sua Necessidade
  • Uma Comparação entre Selênio e QTP(agora UFT)
  • Vantagens de QTP mais de Selênio

, Que desenvolveu o Selênio?

Uma vez que o selênio é uma coleção de ferramentas diferentes, ele também tinha desenvolvedores diferentes. Abaixo estão as principais pessoas que fizeram contribuições notáveis para o Selênio Projeto

Introdução ao Selênio

Principalmente, Selênio foi criado por Jason Huggins, em 2004. Um engenheiro da ThoughtWorks, ele estava trabalhando em uma aplicação web que exigia testes frequentes. Tendo percebido que o teste manual repetitious de sua aplicação estava se tornando cada vez mais ineficiente, ele criou um programa JavaScript que iria controlar automaticamente as ações do navegador. Ele nomeou este programa como o “JavaScriptTestRunner.”

vendo potencial nesta ideia para ajudar a automatizar outras aplicações web, ele fez JavaScriptRunner open-source que mais tarde foi renomeado como selênio Core.

A Política de Mesma Origem Problema

política de Mesma Origem proíbe o código JavaScript a partir de acessar elementos de um domínio que seja diferente de onde foi lançado. Exemplo, o código HTML em www.google.com usa um programa JavaScript ” randomScript.js”. A mesma política de origem só permitirá randomScript.js para acessar as páginas dentro google.com tais como google.com/mail, google.com/login, ou google.com/signup no entanto, não pode aceder a páginas de diferentes sites, tais como yahoo.com/search ou guru99.com porque pertencem a domínios diferentes.

Introdução ao Selênio

Esta é a razão por que antes Selenium RC, testadores necessários para instalar cópias locais dos dois Selenium Core (um programa em JavaScript) e o servidor web que contém o aplicativo web que está sendo testado para que eles pertencem ao mesmo domínio

o Nascimento de Selênio de Controle Remoto (Selenium RC)

Introdução ao Selênio

Infelizmente; Testadores usando selênio Core tiveram que instalar todo o aplicativo sob teste e o servidor web em seus próprios computadores locais por causa das restrições impostas pela mesma política de origem. Então, o engenheiro de outro ThoughtWork, Paul Hammant, decidiu criar um servidor que irá atuar como um proxy HTTP para “enganar” o navegador acreditando que o núcleo selênio e a aplicação web que está sendo testada vêm do mesmo domínio. Este sistema ficou conhecido como o Controle Remoto de selênio ou selênio 1.

Birth of Selenium Grid

Introduction to Selenium

Selenium Grid was developed by Patrick Lightbody to address the need of minimizing test execution times as much as possible. Ele inicialmente chamou o sistema de “hospedado QA.”Ele foi capaz de capturar imagens de navegador durante estágios significativos, e também de enviar comandos de selênio para diferentes máquinas simultaneamente.

Birth of Selenium IDE

Introduction to Selenium

Shinya Kasatani of Japan created Selenium IDE, a Firefox extension that can automate the browser through a record-and-playback feature. Ele surgiu com esta ideia para aumentar ainda mais a velocidade na criação de casos de teste. Ele doou Selenium IDE ao Projeto Selenium em 2006.

Birth of WebDriver

Introduction to Selenium Simon Stewart created WebDriver circa 2006 when browsers and web applications were becoming more powerful and more restrictive with JavaScript programs like Selenium Core. Foi o primeiro framework de testes cross-platform que poderia controlar o navegador a partir do nível operacional.

nascimento do selênio 2

Em 2008, toda a equipe do selênio decidiu fundir o WebDriver e o selênio RC para formar uma ferramenta mais poderosa chamada selênio 2, com o WebDriver sendo o núcleo. Atualmente, o selênio RC ainda está sendo desenvolvido, mas apenas no modo de manutenção. A maioria dos esforços do projeto selênio estão agora focados no selênio 2.

So, Why the Name Selenium?

o nome selênio veio de uma piada que Jason quebrou uma vez para sua equipe. Durante o desenvolvimento do selênio, outro framework de testes automatizado foi popular pela empresa chamada Mercury Interactive (Sim, a empresa que originalmente fez QTP antes de ser adquirida pela HP). Como o selênio é um antídoto conhecido para envenenamento por mercúrio, Jason sugeriu que o nome e seus companheiros o tomassem. É assim que temos de chamar a este quadro até ao presente.

Origem do nome de Selênio framework

Breve Introdução Selenium IDE

Selenium IDE (Integrated Development Environment) é o mais simples quadro na Selênio suite e é a mais fácil de aprender. É um plugin Firefox que você pode instalar tão facilmente quanto você pode com outros plugins. No entanto, devido à sua simplicidade, o selênio IDE só deve ser usado como uma ferramenta de prototipagem. Se você quiser criar casos de teste mais avançados, você terá que usar tanto selênio RC ou WebDriver.

Pros and Cons of Selenium IDE

Brief Introduction Selenium Remote Control (Selenium RC)

Selenium RC was the flagship testing framework of the whole Selenium project for a long time. Esta é a primeira ferramenta automatizada de teste web que permitiu aos usuários usar uma linguagem de programação que eles preferem. A partir da versão 2.25.0, RC pode suportar as seguintes linguagens de programação:

  • Java
  • C#
  • PHP
  • Python
  • Perl
  • Ruby

Prós e Contras do Selenium RC

Breve Introdução WebDriver

O WebDriver prova em si, para ser melhor que Selenium IDE e Selenium RC em muitos aspectos. Ele implementa uma abordagem mais moderna e estável na automação das ações do navegador. O WebDriver, ao contrário do Selenium RC, não confia no JavaScript para testes de automação de selênio. Ele controla o navegador comunicando diretamente com ele.

As línguas suportadas são as mesmas que as do selênio RC.

  • Java
  • C#
  • PHP
  • Python
  • Perl
  • Ruby

Prós e Contras da Selenium Webdriver

Selenium Grid

Selenium Grid é uma ferramenta usada em conjunto com o Selenium RC para executar em paralelo testes em diferentes máquinas e diferentes navegadores, tudo ao mesmo tempo. Execução paralela significa executar vários testes ao mesmo tempo. características:

  • Permite a execução simultânea de testes em vários navegadores e ambientes.
  • poupa imenso tempo.
  • utiliza o conceito de hub-e-nós. O hub atua como uma fonte central de comandos de selênio para cada nó conectado a ele.

Note on Browser and Environment Support

Because of their architectural differences, Selenium IDE, Selenium RC, and WebDriver support different sets of browsers and operating environments.

Selenium IDE WebDriver
Browser Support Mozilla Firefox Internet Explorer versions 6 to 11, both 32 and 64-bit
Microsoft Edge version 12.10240 & above ( partial support some functionalities under development)
Firefox 3.0 and above
Google Chrome 12.0. and above
Opera 11.5 and above
Android – 2.3 e acima para telefones e tablets
(dispositivos de & emuladores)
iOS 3+ para os telefones (dispositivos de & emuladores) e 3.2+ para tablets (dispositivos de & emuladores)
HtmlUnit 2.9 e acima
Sistema Operacional Windows, Mac OS X, Linux Todos os sistemas operacionais, onde os navegadores acima pode executar.

Nota: Selênio WebDriver é denominado como o sucessor do selênio RC que foi depreciado & oficialmente anunciado por SeleniumHQ.

Como Escolher o Direito de Selênio Ferramenta para a Sua Necessidade

Ferramenta de
Por Que Escolher?

Selenium IDE

  • To learn about concepts on automated testing and Selenium, including:
  • Selenese commands such as type, open, clickAndWait, assert, verify, etc.
  • Locators such as id, name, xpath, css selector, etc.
  • Executing customized JavaScript code using runScript
  • Exporting test cases in various formats.criar testes com pouco ou nenhum conhecimento prévio na programação.
  • para criar casos de teste simples e suites de teste que você pode exportar mais tarde para RC ou WebDriver.
  • para testar uma aplicação web apenas contra o Firefox e o cromado.

Selenium RC

  • design De um teste usando uma linguagem expressiva que Selenese
  • Para executar o teste com diferentes navegadores (exceto HtmlUnit) em diferentes sistemas operacionais.
  • para implantar os seus testes em vários ambientes usando a grelha de selénio.
  • para testar a sua aplicação contra um novo navegador que suporta JavaScript.para testar aplicações web com cenários complexos baseados em AJAX.

WebDriver

  • Para utilizar uma determinada linguagem de programação, na concepção de seu caso de teste.
  • para testar aplicações que são ricas em funcionalidades baseadas em AJAX.
  • para executar testes no navegador HtmlUnit.
  • para criar resultados de teste personalizados.

Selenium Grid

  • Para executar o Selenium RC scripts em vários navegadores e sistemas operacionais simultaneamente.
  • para executar uma enorme suíte de teste, que precisa completar o mais rápido possível.

Uma Comparação entre Selênio e QTP(agora UFT)

Quick Test Professional(QTP) é um proprietário de testes automatizados ferramenta anteriormente de propriedade da empresa Mercury Interactive, antes de ser adquirido pela Hewlett-Packard em 2006. O Selênio Ferramenta Suite tem muitas vantagens sobre QTP, como detalhado abaixo –

Vantagens e Benefícios do Selênio sobre QTP

Selênio
QTP
código-fonte Aberto, livre para usar, e de forma gratuita. comercial.
Altamente extensível Limitado add-ons
Pode executar testes em diversos navegadores só Pode executar testes no Firefox, O Internet Explorer e o google Chrome
Suporta vários sistemas operacionais Pode ser usado apenas no Windows
Suporte para dispositivos móveis QTP Suporta aplicativo Móvel de automação de teste (iOS & Android) usando a solução de HP chamado de HP Mobile Center
Pode executar os testes, enquanto o navegador é minimizada Precisa ter o aplicativo em o teste a ser visível no ambiente de trabalho
pode executar testes em paralelo. só pode ser executado em paralelo, mas usando o Quality Center, que é novamente um produto pago.

Advantages of QTP over Selenium

Advantages of QTP over Selenium
QTP
Selenium
Can test both web and desktop applications Can only test web applications
Comes with a built-in object repository Has no built-in object repository
automatiza mais rápido que o selênio porque é um IDE totalmente caracterizado. automatiza a uma velocidade mais lenta porque não tem um IDE nativo e apenas o IDE de terceiros pode ser usado para o desenvolvimento
o teste baseado em dados é mais fácil de realizar porque ele tem tabelas de dados globais e locais embutidas. o teste de dados é mais complicado, uma vez que você tem que confiar nas capacidades da linguagem de programação para definir valores para os seus dados de teste
pode acessar controles dentro do navegador(como a barra de favoritos, barra de endereço, botões de trás e para a frente, etc.) não pode acessar elementos fora da aplicação web sob teste
fornece suporte profissional ao cliente não está sendo oferecido suporte oficial ao usuário.
Tem capacidade nativa de exportação de dados de teste em formatos externos não Tem capacidade nativa de exportação de dados de tempo de execução em formatos externos
Parametrização de Suporte é construído Parametrização pode ser feito através de programação, mas é difícil de implementar.
os relatórios de ensaio são gerados automaticamente nenhum suporte nativo para gerar relatórios de teste / bug.

embora claramente, o QTP tem capacidades mais avançadas, o selénio supera o QTP em três áreas principais:

  • Custo(porque o Selênio é completamente grátis)
  • Flexibilidade(devido a um número de linguagens de programação, navegadores e plataformas pode suportar)
  • testes em Paralelo(algo que QTP é capaz de, mas apenas com a utilização de Centro de Qualidade)

Resumo

  • todo O Selênio Teste de Software Suite é composta de quatro componentes:
  • Selenium IDE, um add-on Firefox que só pode usar na criação de casos de teste relativamente simples e suites de teste.
  • Controle Remoto de selênio, também conhecido como selênio 1, que é a primeira ferramenta de selênio que permitiu aos usuários usar linguagens de programação na criação de testes complexos.
  • WebDriver, o novo avanço que permite que seus scripts de teste se comuniquem diretamente ao navegador, controlando-o assim a partir do nível operacional.
  • selênio Grid é também uma ferramenta que é usada com selênio RC para executar testes paralelos em diferentes navegadores e sistemas operacionais.
  • selénio RC e WebDriver foram fundidos para formar selénio 2.
  • selênio é mais vantajoso do que QTP em termos de custos e flexibilidade. Ele também permite que você execute testes em paralelo, ao contrário do QTP, onde você só está autorizado a executar testes sequencialmente.