Se você olhar para a carga do servidor web tradicionais testes de ferramentas, como o corredor de carregar ou Jmeter, você vai notar um padrão de projeto básico para a recriação de grandes volumes de tráfego na web. Com essas ferramentas, um programa multi threaded abre Soquetes TCP e coloca (por meio de chamadas de API) solicitações HTTP diretamente sobre os soquetes. Desta forma, o volume necessário de tráfego HTTP pode ser simulado sem a sobrecarga de navegadores da web em execução. Normalmente, cerca de 500 chamados usuários virtuais' podem ser simulados de um único Pentium 4 PC com cerca de 1GB de RAM. Se 'navegadores reais' eram para ser executado em paralelo no mesmo equipamento apenas cerca 6 navegadores podem ser simuladas. Por estas razões a abordagem de recriar o tráfego HTTP em processos multi-threaded, chamando APIs, ganhou popularidade por 15 anos ou mais.
Embora o HTTP abordagem centrada permanece popular hoje surgiu outra abordagem alternativa viável para simular grandes volumes de tráfego na web, e esta abordagem envolve a execução de vários navegadores 'sem cabeça' em paralelo para recriar o tráfego de navegador da web necessário para o servidor web de teste de carga.
O navegador 'sem cabeça' do termo refere-se a um navegador da web totalmente funcional, em termos das APIs necessárias para se comunicar com o servidor web, mas sem a parte de interface (GUI) do usuário. Há uma série de navegadores sem cabeça livremente disponíveis (por exemplo, HTMLUNIT e PhantomJS), e estas podem todos ser programaticamente conduzidas para interagir com o servidor web da mesma forma que um navegador real. Enquanto esses navegadores não têm uma interface gráfica são extremamente úteis para enviar solicitações para um servidor Web a fim de analisar os resultados para a captura de tela, monitoramento de rede ou automação da página geral.
Selenium WebDriver é uma ferramenta de teste automatizada 'funcional' que pode simular a ações do usuário em um navegador da web como o Firefox ou Internet Explorer. Selênio também pode simular ações contra HTMLUNIT. Dado o recurso pegada (CPU e memória) de HTMLUNIT é distante menos do que um navegador tradicional várias instâncias (executadas como threads) de selênio conduzido navegadores HTMLUNIT podem ser executadas em um único computador para direcionar o tráfego da web para um servidor web de teste de carga. Normalmente, cerca de 25 navegadores sem cabeça podem ser conduzidos de um Pentium 4 PC com 1GB de ram. Desta forma, cerca de 500 'usuários virtuais' podem ser simulados com 25 técnica do PC (ou máquinas virtuais), fazendo isso de dirigir o tráfego do servidor web viável para muitos projetos de teste de carga.
Para executar várias instâncias do Selenium WebDriver usando a técnica sem cabeça um multi roscado framework Java é necessário. Para tal basta Jmeter ou The Grinder carga de código aberto, estruturas de teste.
Embora não é adequado para simulação extremamente grandes volumes de tráfego na web a abordagem do navegador sem cabeça devem ser consideradas quando de outra forma seria difícil recriar o tráfego necessário usando drivers HTTP. Situações em que a carga do navegador sem cabeça dirigindo a abordagem é vantajosa inclui páginas da web que usam a reescrita de url para manipulação de sessão ou onde a simulação de tráfego exato é necessária. A abordagem do navegador sem cabeça irá recriar o tráfego da web mais próxima para tráfego de navegador real, do que o gerado pelas tradicionais estruturas de driver HTTP.