Als je kijkt naar traditionele web server load testing tools, zoals Load Runner of Jmeter, ziet u een basisontwerp patroon voor het herscheppen van grote hoeveelheden verkeer van het web. Met deze tools een multi threaded programma geopend TCP sockets en plaatst (via API-aanroepen) HTTP-aanvragen rechtstreeks op deze sockets. Op deze manier kan de vereiste hoeveelheid HTTP-verkeer zonder de overhead van de exploitatie van webbrowsers worden gesimuleerd. Meestal kunnen ongeveer 500 zogenaamde 'virtuele gebruikers' worden gesimuleerd van een enkele Pentium 4 PC met ongeveer 1GB RAM-geheugen. Als 'echte browsers' moest worden uitgevoerd in parallel op dezelfde apparatuur slechts ongeveer kunnen 6 browsers worden gesimuleerd. Om deze redenen is de aanpak van het herscheppen van HTTP-verkeer in multi-threaded processen, aanroepen van API's, populaire gebleven voor de laatste 15 jaar of zo.
Hoewel de HTTP gedreven aanpak populair blijft vandaag gekomen een andere levensvatbare alternatieve benadering te simuleren van grote hoeveelheden verkeer van het web en deze aanpak omvat meerdere 'headless' browsers parallel het vereist web browserverkeer voor load testing van de webserver opnieuw te lopen.
De term 'headless' browser verwijst naar een volledig functionele webbrowser, in termen van de vereiste API's om te communiceren met de webserver, maar zonder het gedeelte user interface (GUI). Er zijn een aantal headless browsers vrij beschikbaar (bijvoorbeeld HTMLUNIT en PhantomJS) en dit kunnen allemaal worden via programmacode gereden om te communiceren met de webserver op dezelfde manier zou een echte browser. Terwijl deze browsers niet een GUI hebben zijn ze uiterst nuttig voor het verzenden van aanvragen naar een webserver om parse de resultaten voor zeef inneming, Netwerkmonitoring of algemene pagina automatisering.
Selenium WebDriver is een geautomatiseerde 'functionele' testen hulpmiddel dat acties van de gebruiker op een webbrowser zoals Firefox of Internet Explorer kunt simuleren. Selenium kan ook simuleren acties tegen HTMLUNIT. Gezien de resource is voetafdruk (CPU en geheugen) van HTMLUNIT veel minder dan een traditionele browser in meerdere exemplaren (uitgevoerd als draden) van Selenium gedreven HTMLUNIT browsers op een enkele computer om webverkeer voor load testing een webserver kunnen worden uitgevoerd. Meestal kunnen ongeveer 25 headless browsers worden gereden van een Pentium 4 PC met 1GB ram. Op deze manier kunnen ongeveer 500 virtuele gebruikers worden gesimuleerd met 25 PC's (of virtuele machines) maken van deze techniek van het rijden web serververkeer levensvatbaar is voor vele load testing projecten.
Om te voeren meerdere exemplaren van Selenium WebDriver met de headless techniek een multi is threaded kader van Java vereist. Voor dit doel volstaat Jmeter of The Grinder open source load testing frameworks.
Hoewel niet geschikt voor het simuleren van zeer moeten grote volumes van webverkeer de headless browser benadering worden overwogen bij het anders zou moeilijk te herscheppen van de vereiste verkeer met behulp van HTTP-stuurprogramma's. Situaties waarin de headless browser lading rijden aanpak voordelige bevat webpagina's die gebruikmaken van url herschrijven voor sessie behandeling of waar nauwkeurige verkeer simulatie is vereist. De headless browser aanpak zal opnieuw maken webverkeer dat is dichter bij de echte browserverkeer dan die gegenereerd door de traditionele HTTP stuurprogramma kaders.