Em termos básicos, os navegadores sem cabeça são navegadores que podem ser usados para testar a usabilidade de páginas da web e executar interações do navegador, como faria com seu navegador comum. A única diferença aqui é que não há interface gráfica do usuário (GUI) e eles geralmente são executados do terminal.
Navegadores sem cabeça:
Agora que conhecemos um fator importante para ambas as ferramentas, podemos prosseguir.
Pupfeteer é uma biblioteca de nós do Google que fornece uma API simples para controlar o Chrome sem cabeça. Através de marionetistas, tarefas comuns, como digitar em entradas, clicar nos botões, testar a usabilidade das páginas da web e até a raspagem da web, pode ser realizada facilmente.
O boneco é oficial da equipe do Chrome e usa o protocolo de depuração do Chrome Remote, assim como encontraríamos com o Chrome Devtools. Esta biblioteca suporta a sintaxe JavaScript moderna disponível no Google Chrome.
Configurar
Instalar e começar com o marionetista é muito fácil. Como o boneco é uma biblioteca de nós, ele pode ser instalado usando o npm ferramenta.
A instalação pode ser feita com o comando abaixo:
NPM I PULANÇO
Executando o comando acima instala marionetistas. Espera -se também baixar uma versão recente do Chromium que funcionaria com a API.
O tamanho do cromo é varia de acordo com o sistema operacional:
Após a instalação do marionetista, você pode descobrir mais informações sobre como começar, também pode conferir mais exemplos de código.
Características
Embora a capacidade do marionetista de lançar um navegador sem cabeça seja um recurso que ganhou uma fama, esse não é o único recurso que o torna incrível. O marionetista também tem alguns outros recursos que o tornam útil, vamos dar uma rápida olhada em alguns deles.
Automação fácil:
Embora existam outras ferramentas que podem ser usadas para automação da web, o boneco sai por cima. Isso se deve ao fato de funcionar bem apenas para um navegador, que é o navegador Chrome sem cabeça, portanto, realiza tarefas de automação da Web da maneira mais eficiente possível. Pupleto também funciona bem com bibliotecas populares de testes de unidade, como Mocha e Jasmine.
Teste de captura de tela:
Este é um recurso vital para qualquer tarefa de teste da Web automatizada. As capturas de tela são importantes e ajudam a acompanhar o resultado de interações com elementos em uma página da web. Bibliotecas como o tester de marionetes-screenshot também existem em marionetistas que fornecem a capacidade de comparar capturas de tela geradas durante o teste. Além disso, gerando capturas de tela de testes, os PDFs também podem ser gerados a partir de páginas da web testadas em marionetistas.
Teste de performance:
O Chrome fornece devtools que permitem a gravação da linha do tempo de desempenho das páginas da web, e o marionetista também tira proveito disso. Com o marionete, os traços da linha do tempo dos sites podem ser capturados para examinar os problemas de desempenho. Devido ao controle de API de alto nível do marionete sobre o Protocolo de Ferramentas de Desenvolvedores do Chrome, ele oferece aos usuários a capacidade de controlar os trabalhadores do serviço e testar o armazenamento em cache de sites.
Raspagem da web:
Uma palestra sobre recursos não seria concluída sem reconhecer a capacidade do marionetista de ser usado para fins de raspagem na web. Aprender a usar marionetistas como raspador da web é bastante fácil, dê uma olhada na documentação da API.
Selênio
O selênio é uma poderosa estrutura de teste da web, que tem a capacidade de automatizar aplicativos da Web para fins de teste. O selênio também é conhecido por sua capacidade de automatizar tarefas de administração baseadas na Web.
O selênio vem em duas partes; O selanium webdriver para criar suítes e testes de automação baseados no navegador e o selênio IDE para criar scripts de reprodução de bugs rápidos.
Não esquecendo que o selênio também suporta navegadores sem cabeça, como visto com marionetistas.
Configurar
Ao contrário do marionetista, a criação de selênio não é direta. O selênio suporta muitos idiomas e diferentes navegadores; portanto, essas condições possíveis precisam ser cuidadas.
Listados abaixo estão os links para tutoriais oficiais sobre como configurar ligações de selênio para diferentes idiomas.
Além disso, apoiando diferentes idiomas, o selênio também suporta vários navegadores. Ao contrário do marionete que instala o cromo durante a instalação, pode ser necessário instalar drivers da web para o navegador da sua escolha.
Aqui estão os links para drivers da web para Mozilla Firefox e Google Chrome.
Se você deseja usar o selênio IDE também, ele também existe para vários navegadores. Aqui estão os links para o Selênio IDE para Mozilla Firefox e Google Chrome.
Características
Sua capacidade de trabalhar com navegadores sem cabeça o tornou indiscutivelmente a ferramenta de automação da web mais popular, mas existem outros recursos que o tornam poderoso.
Suporte de vários idiomas:
Este é um recurso de selênio muito importante. Com seu suporte de múltiplas idiomas, mais desenvolvedores podem usar a ferramenta para suas tarefas de teste de automação da web. Embora se possa pensar.
Suporte de várias plataformas:
Da mesma forma que o selênio não é restrito por barreiras linguísticas, também não é restrito pela barreira da plataforma. Não é novidade que o aplicativo da web se comporte de maneira diferente em várias plataformas. O Selenium oferece aos testadores a capacidade de testar os principais navegadores da web para fornecer uma experiência suave do usuário para usuários em diferentes navegadores. Naides Browers, o selênio também pode ser usado para testar em celulares, como Android, iOS, Windows, BlackBerry Apps.
Ferramenta de gravação:
Com o Selênio IDE, é fácil gravar testes de automação da Web. O Selênio IDE permite que os testadores usem a capacidade de gravação, bem como o suporte autocompleto e a capacidade de navegar com os comandos. A ferramenta de gravação parou de trabalhar no Firefox 55 e versões posteriores, no entanto, existem outros plugins no Firefox que servem ao mesmo objetivo. Portanto, a capacidade de registrar testes continua sendo um grande recurso de selênio.
Raspagem da web:
Enquanto o selênio é usado para testar aplicativos da web, ele também é bem escalado como um raspador da web. O selênio pode ser usado para raspar sites do Ajax e os sites mais difíceis de raspar, desde que você possa entender a estrutura HTML. Você pode conferir este tutorial sobre o uso do Selenium para raspar a web com Python.
Se você não se incomoda em testar páginas da web em outras plataformas, assim como o Chrome, é bom trabalhar com marionetistas, desde que possa trabalhar com JavaScript (nó). No entanto, se você está preocupado com várias plataformas, o uso de selênio é um acéfalo. Falando sobre suas habilidades de raspagem na web, ambas as ferramentas estão por aí. Deve -se notar que o marionetista pode ser mais rápido que o selênio.
Qualquer ferramenta que você escolher no final do dia deve ficar bem, apenas goste de escrever seus scripts de automação.