Software

Load testing-Webserver mit Selen, einem Web-Browser funktional-Test-tool

Schaut man sich traditionelle Web Server Load testing-Tools wie Load Runner oder Jmeter, bemerken Sie eine grundlegende Entwurfsmuster für die Rekonstruktion von großer Mengen von Web-Traffic. Mit diesen Werkzeugen ein Multi-threaded-Programm öffnet TCP-Sockets und stellt (über API-Aufrufe) HTTP-Anforderungen direkt an diese Buchsen. Auf diese Weise kann das erforderliche Volumen des HTTP-Datenverkehrs ohne den Aufwand für Webbrowser ausführen simuliert werden. Rund 500 sogenannte 'virtuelle Benutzer' können in der Regel aus einem Pentium 4 PC mit rund 1 GB RAM simuliert werden. Wenn 'echten Browser' wurden nur etwa parallel auf dem gleichen Gerät ausgeführt werden konnte 6 Browser simuliert werden. Aus diesen Gründen ist der Ansatz der Neuerstellung HTTP-Datenverkehr in Multi-Threaded Prozessen, API-Aufruf für den letzten 15 Jahren oder so beliebt geblieben.

Obwohl die HTTP getrieben Ansatz beliebt bleibt heute entstanden weitere tragfähige alternative Ansätze zur Simulation großer Mengen von Web-Traffic, und dieser Ansatz umfasst die Ausführung von mehreren "headless" Browsers parallel zu den erforderlich Browser Webverkehr auf Load testing-Web-Server neu zu erstellen.

Der Begriff "headless" Browser bezieht sich auf eine voll funktionsfähige Web-Browser in Bezug auf die erforderlichen APIs für die Kommunikation mit dem Webserver, aber ohne die Benutzer-Schnittstelle (GUI) Teil. Es gibt eine Reihe von frei verfügbaren kopflose Browsern (z.B. HTMLUNIT und PhantomJS) und diese können alle programmgesteuert Gefahren werden, mit dem Webserver in der gleichen Weise zu interagieren, würde ein echter Browser. Während diese Browser nicht über eine GUI verfügen sind sie extrem nützlich zum Senden von Anforderungen an einen Webserver um die Ergebnisse für Screen-Capture, Netzwerküberwachung oder allgemeine Seite Automatisierung zu analysieren.

Selen WebDriver ist eine automatisierte 'funktionalen'-Test-Tool, das Benutzeraktionen auf einem Web-Browser wie Firefox oder Internet Explorer simulieren kann. Selen kann auch Aktionen gegen HTMLUNIT zu simulieren. Angesichts der Ressource ist Grundfläche (CPU und Speicher) von HTMLUNIT weit weniger als einen herkömmlichen Browser, die auf einem einzelnen Computer, Web-Verkehr für Lasttests in einen Webserver mehrere Instanzen (ausgeführt als Threads) von Selen getrieben HTMLUNIT Browsern ausgeführt werden können. Rund 25 kopflose Browsern können in der Regel von einem Pentium 4-PC mit 1 GB Ram betrieben werden. Auf diese Weise können rund 500 'virtuelle Benutzer' mit 25 PC's (oder virtuelle Maschinen) so dass dieser Technik des Fahrens Web-Server-Verkehr für viele Projekte für die Lasttests simuliert werden.

Um mehrere Instanzen von Selen WebDriver mit der kopflose Technik einen Multi ausgeführt ist Gewinde Java-Framework erforderlich. Zu diesem Zweck genügt entweder Jmeter oder The Grinder open-Source-Load testing-Frameworks.

Obwohl nicht geeignet für die Simulation von extrem sollte große Mengen von Web-Traffic der kopflose Browser-Ansatz betrachtet werden, wenn es sonst schwierig, den erforderlichen Datenverkehr mithilfe von HTTP-Treiber neu wäre. Situationen, in denen die kopflose Browser Laden fahren Ansatz vorteilhaft enthält Webseiten, die für Session-Handling verwenden Url umschreiben oder wenn genaue Verkehrssimulation erforderlich ist. Der kopflose Browser-Ansatz wird Web-Traffic zu erschaffen, die näher an realen Internetverkehr, als, die durch den traditionellen HTTP-Treiber-Frameworks generiert.