XLT Product logo

Sie benötigen ein Werkzeug, das die Performance Ihrer Webanwendung realistisch misst und Ihnen die besten und detailliertesten Reports liefert. Xceptance Load Test (XLT) ermöglicht die lokale Entwicklung oder den Einsatz im großen Maßstab und gibt Ihnen Zugriff auf alle gesammelten Daten. Open Source unter Apache License 2.0.

XTC Product logo

Das Lasttest-Werkzeug für die Softwareentwicklung

Was ist XLT?

Von Lasttestern für Lasttester

XLT wurde aus der Notwendigkeit heraus geboren und hat sich zu einem erstklassigen Werkzeug für Last- und Performance-Tests entwickelt, das sich durch unübertroffene Fähigkeiten und Skalierbarkeit auszeichnet.

Gebrauchsfertige und detaillierte Reports waren von Anfang an eine zentrale Anforderung, ebenso die Möglichkeit, Tests in reinem Java-Code zu schreiben. Selbst in der Open-Source-Version können die Tests umfangreich skaliert werden.

Sie können Ihre Tests als JUnit-Tests in Ihrer bevorzugten IDE ausführen, so dass sie wie jedes andere Programm debuggt werden können. Außerdem erleichtert der Result-Browser die Diagnose erheblich.

XLT ist kein gewöhnliches Lasttestwerkzeug. Es bietet Ihnen höchste Vielseitigkeit und Flexibilität. Ob Sie komplexe Herausforderungen meistern oder alltägliche Lasttestszenarien durchführen möchten - mit XLT sind Sie bestens gerüstet.

XLT ist quelloffen unter der Apache-Lizenz. Sie finden den Quellcode auf GitHub.

XLT Report Transaction-Seite

Kurze Feature-Übersicht

XLT ist das Ergebnis der langjährigen Erfahrung von Xceptance im Bereich Last- und Performance-Tests.

Skript-Erstellung

Testskripte werden in Java geschrieben. Sie können ohne Einschränkungen alles tun, was Java bietet - Debuggen, Bibliotheken hinzufügen, die Leistung Ihrer IDE nutzen.

Lastmodelle

Es stehen flexible Lastmodelle für Benutzerzahl und Ankunftsrate zur Verfügung. Das Modell der Ankunftsrate adressiert das "Coordinated Omission Problem".

Reporting

Umfangreiches, maßgeschneidertes Reporting. Keine Daten gehen verloren. Sie können jederzeit neue Ansichten erstellen, Daten zusammenführen, aufteilen und mit Anmerkungen versehen.

Skalierbarkeit

Skalierung auf eine beliebige Anzahl von Rechnern und Benutzern. Koordinieren Sie den Test von Ihrem eigenen oder von anderen Rechnern aus. Sie können sogar offline gehen, ohne dass die Ergebnisse beeinträchtigt werden.

Debugging

Debuggen Sie mit unserem Result-Browser und mit Ihrer bevorzugten IDE. Entwickeln Sie einfach Lasttests wie jedes andere Java-Programm.

Offene Datenformate

Alle Datenformate sind offen, dokumentiert und stehen bei Bedarf für Ihre eigene Verarbeitung bereit. Keine gesammelten Daten werden entfernt.

Echte Browser

Sie können echte Browser für Lasttests verwenden, um komplizierte Konfigurationen einfach zu handhaben. Wenn Sie den Test automatisieren können, können Sie ihn auch als Lasttest ausführen.

Konfiguration

Auch die Konfiguration gehört in die Codebasis. Verwenden Sie klassische Property-Dateien oder YAML-Strukturen mit einer unserer erweiterten Testsuiten.

Dies sind nur einige der wichtigsten Merkmale von XLT. Die Liste ist lang und jedes Merkmal wurde durch einen konkreten Testbedarf geprägt. Nichts wurde entwickelt, nur um einen Punkt auf einer Featureliste abzuhaken.

Features

XLT ist das Ergebnis unserer langjährigen Erfahrung im Bereich Last- und Performance-Tests. Es nutzt auch bewährte Technologien wie WebDriver, Apache HttpClient und HtmlUnit.

Bewährte Technologien

Baut auf bewährte Technologien

XLT nutzt, was Sie vielleicht bereits kennen: Java, JUnit, WebDriver und HttpClient. Es gibt Ihnen die Werkzeuge in die Hand, mit denen Sie den größten Nutzen erzielen können. XLT lässt sich gut integrieren. Sie können XLT erweitern und es wird Ihnen nicht schwer fallen, es zu beherrschen. Vollkommen plattformunabhängig. XLT basiert auf bewährten und erprobten Technologien.

  • Java ist die Skriptsprache, wenn Skripting erforderlich ist. Verwenden Sie Ihre bevorzugte IDE, Profiler und Debugger.
  • JUnit ermöglicht eine einfache Integration in Testautomatisierungsprozesse.
  • Die rohen Ergebnisdaten werden als CSV-Dateien für die optionale Nachbearbeitung geliefert.
  • Reports werden im HTML-Format bereitgestellt, um das Teilen zu erleichtern.
  • Reports werden aus XML über XSL gerendert, so dass Inhalt und Layout leicht angepasst werden können.
  • Die Reports enthalten eine XML-Datendatei für die maschinengestützte Auswertung.
  • Die Befehlszeile hilft Ihnen, alles schnell zu automatisieren.
  • WebDriver wird sowohl für Server-side Lasttests als auch für Client-Performance-Tests verwendet.

Nicht zuletzt ist XLT plattformunabhängig. Unter Windows schreiben, unter Linux ausführen. Auf Mac komponieren, auf Windows einsetzen. Die Möglichkeiten sind endlos.

Deployment & Cloud

Einfach installierbar, unabhängig vom Betriebssystem

XLT ist plattformunabhängig, Sie müssen es nur entpacken. Wenn Sie einsatzbereite Cloud-Images benötigen, stellen wir Ihnen Amazon Web Services EC2-AMIs kostenlos zur Verfügung.

Sie können XLT bei jedem Cloud-Anbieter einsetzen und jedes Betriebssystem verwenden, das Java 11 unterstützt. Wir empfehlen dringend Linux-Serverumgebungen für Tests mit sehr hoher Last.

XLT verwendet HTTPS-basierte Kommunikation mit Authentifizierung für die Kommunikation zwischen Controller und Agenten. Sie können Proxies, Authentifizierung und Ihre bewährten Werkzeuge verwenden, um XLT einzusetzen und auszuführen. Unser Ziel war es, es so einfach wie möglich zu halten, um es so flexibel wie möglich zu machen.

Erstklassige Testreports

Vorgefertigte Reports, die einfach passen

XLT bietet standardmäßig Best-Practice- Reports, die auf mehr als einem Jahrzehnt Erfahrung mit Last- und Performance-Tests basieren.

Lasttest-Reports

Der XLT-Lasttest-Report enthält alles, was Sie über Ihre Anwendung wissen müssen. Neben den offensichtlichen Daten wie Laufzeiten, Durchschnittswerte und Perzentile enthält er auch Service-Level-Agreement-Werte und listet die Konfiguration Ihres Tests sowie alle Fehler und Probleme auf. Darüber hinaus liefert XLT umfassende Messergebnisse auf verschiedenen Ebenen, von Transaktionen und Aktionen bis hin zu einzelnen Request-Typen.

Comparison Reports

Wenn Sie einen Test erneut durchführen und wissen möchten, ob der spätere Testlauf tatsächlich besser war, können Sie einen Vergleichsbericht erstellen.

Trend Reports

Ein Trend-Report zeigt, wie sich die Leistung über viele Testläufe hinweg entwickelt hat. Er verwendet auch Farbcodes, um die Änderungen zu visualisieren.

Einfach anpassbar

Fügen Sie neue Datenquellen hinzu, ändern Sie Inhalt und Layout der Reports, erstellen Sie leistungsfähige Testsuiten als Framework für weitere Tests.

Ein gutes Werkzeug muss sich in die Umgebung, in der es genutzt wird, problemlos einfügen können. XLT bietet viele Möglichkeiten der Anpassung und Erweiterung, um Ihren spezifischen Bedürfnissen gerecht zu werden.

Reports

Layout und Inhalt aller Reports können angepasst werden, weil CSS und die Rendering-Templates mitgeliefert werden. Sie benötigen ein spezifisches Reportlayout? Sie möchten Ihren eigenen Datenüberblick? Sie möchten die Messwerte reduzieren? Kein Problem mit XLT!

Benutzerdefinierte und externe Daten

Während eines Tests sammelt XLT umfangreiche und für den Testlauf relevante Daten. Dennoch ist es manchmal nützlich, zusätzliche Informationen über das zu testende System zu protokollieren. Zu diesem Zweck stellt XLT den Mechanismus der "Custom Values" zur Verfügung.

Mit dem XLT-Reportgenerator können Sie externe Datendateien in den Report einbinden. Dies kann verwendet werden, wenn es nicht möglich ist, während der Laufzeit des Lasttests direkt auf die externe Datenquelle zuzugreifen.

Nutzen Sie Java

Wenn es etwas gibt, das nicht Teil von XLT ist, können Sie es mit Java realisieren. Natürlich gibt es Grenzen, weil man die Messungen beeinflussen oder die Skalierung einschränken könnte, aber wenn man das beachtet, ist Vieles möglich.

Gemacht für Automation

Java als Skriptsprache, offene Datenformate, Kommandozeile, Testprinzip JUnit, WebDriver-Unterstützung und vieles mehr.

XLT kann in alle möglichen Automationsprozesse eingebunden werden, ganz gleich, ob es sich um ein Shellskript oder einen ganzen Buildprozess handelt.

Wir haben XLT so entwickelt, dass es möglichst perfekt mit Ihrer bevorzugten IDE, der Kommandozeile und Ihrem Build-Prozess harmoniert, oder einfach mit ein wenig Shell-Skripting.

Lastprofile

Realistisch oder vorhersagbar - Sie entscheiden

XLT unterstützt eine sehr flexible Einrichtung von Lastprofilen, von konstanten oder veränderlichen Nutzerzahlen bis hin zu Ankunftsraten. Stellen Sie langlaufende Testprofile zusammen, die das Tagesgeschehen widerspiegeln und absolut frei konfigurierbar sind.

Lastprofil-Features

  • Ankunftsraten-Modell für realistische Simulationen
  • Nutzerzahl-Modell für vorhersagbare Messungen
  • Ramp-up für graduell zunehmende Last
  • Freie Lastprofil-Konfiguration für anspruchsvolle Testszenarien

Frei konfigurierbar

Sie benötigen einen Testlauf, bei dem die Last nach einer langsamen Anlaufphase innerhalb einer Minute ihren Höhepunkt erreicht, 10 Minuten auf diesem Niveau bleibt, um dann in Wellen zurückzukommen? Kein Problem mit XLT, ganz gleich, ob Ihre Tests auf Ankunftsrate oder Nutzeranzahl basieren.

Einfach teilen

Testsuites und Konfigurationen können einfach und schnell geteilt werden

XLT Reports können einfach und schnell geteilt werden, weil Sie nach der Generierung nicht mehr mit XLT verknüpft sind.

Alle Reports sind reines HTML. Sie können sie komprimieren, per E-Mail senden, hochladen und praktisch mit jedem System teilen, das Sie bevorzugen.

Wussten Sie, dass Sie Ihren Lasttest von einem Rechner aus starten und die Ergebnisse von einem anderen abrufen können? Oder vielleicht kann Ihr Kollege die Daten später einsammeln und für Sie auswerten, während Sie bereits auf dem Weg zu einer Besprechung sind.

Sehen Sie alles

Sehen Sie bei einem Problem, was im Szenario passiert

Der Result Browser ist Ihr Werkzeug, um die geladenen Seiten zu überprüfen und nach dem Testlauf zu debuggen.

Während Sie Ihre Skripte entwickeln, zeigt Ihnen der Result Browser alle Details zum zuletzt ausgeführten Skript. So könnnen Sie sicherstellen, dass Ihre Skripte alles berücksichtigen und Ihre Requests mit dem wirklichen Traffic übereinstimmen.

Wenn während des Lasttests Fehler auftreten, werden die letzten Momente der Transaktion gespeichert, einschließlich der heruntergeladenen Daten und aller technischen Details. Sie können also sehen, was gesendet und empfangen wurde. Wenn Sie die Request-ID-Funktion von XLT verwenden, erhalten Sie sogar eine eindeutige ID, die Sie mit Ihren Server-Protokollen abgleichen können.

Prüfen Sie alles

Detaillierte Validierung durch Assertions

Ein Test ist nur so gut wie das, was er prüft. XLT unterstützt und fördert ein Höchstmaß an Validierungsmöglichkeiten, damit Sie sichergehen können, dass die geladenen Seiten den Erwartungen entsprechen.

Sie können die gesamte Syntax der Assertions von JUnit und Selenium nutzen. Auch Hamcrest lässt sich einfach integrieren. Für noch detailliertere Assertions erlaubt XLT nicht nur den Zugriff auf den Hauptrequest einer Seite, sondern auch auf alle Sub-Requests.

Skalierbar

Testen Sie mit beliebig vielen Lastmaschinen, Standorten und nahezu unbegrenzter Nutzerzahl

Sie können eine unbegrenzte Anzahl von Maschinen für Ihre Lasttests verwenden. Skalieren Sie einfach über Rechenzentren hinweg. XLT orchestriert die Lastverteilung, Uploads und Downloads selbstständig.

Skalieren Sie XLT pro Maschine, indem Sie mehr Prozesse für eine perfekte Hardwareauslastung einrichten. Skalieren Sie einfach über mehrere Rechner hinweg, indem Sie weitere Standorte hinzufügen. XLT verwendet differentielle und gleichzeitige Up- und Downloads für maximale Geschwindigkeit.

Die Last wird automatisch auf alle lastgenerierenden XLT-Agenten verteilt. Wenn Sie heterogene Hardware verwenden, können Sie jeder Maschine ein Gewicht zuweisen, um eine unterschiedliche Geschwindigkeit oder Größe zu berücksichtigen.

Die Installation von XLT ist einfach und benötigt nur wenige Minuten. XLT nutzt HTTPS und Authentifizierung, um die Kommunikation mit den Lastagenten abzusichern. Binden Sie die XLT-Agenten an jeden beliebigen Port.

Mit vorkonfigurierten Amazon Web Service Images (AMIs) können Sie schnell mit Amazon EC2 beginnen. Starten Sie sie einfach und Sie sind bereit.

Konfigurierbar

Definieren Sie Timeouts, Keep-Alive, Kompression, das Laden von Bildern, erlaubte Hosts, Denkzeiten, Fehlerbehandlung und vieles mehr.

Um das Verhalten an Ihre Testanforderungen anzupassen, können viele Parameter eingestellt werden.

XLT bietet eine Vielzahl von Optionen zur Änderung des Verhaltens, so dass alle möglichen Konfigurationen getestet werden können.

Archivierbar

Offene Formate für Reports und Messergebnisse

XLT verwendet offene Formate für Messergebnisse und HTML-Reports. Das erleichtert die Archivierung aller Daten.

Messergebnisse und HTML-Reports sind getrennt, so dass Sie leicht entscheiden können, ob Sie alle gemessenen Daten oder nur das Endergebnis speichern möchten. Gespeicherte Messergebnisse können jederzeit auf jedem Rechner wieder in HTML-Reports umgewandelt werden.

HTML-Reports und Messergebnisse speichern Ihre komplette Testkonfiguration. Die Wiederholung des selben Testlaufs Tage oder Wochen später ist eine Sache von Sekunden.

Dokumentation

Ressourcen und Links

Die Dokumentation ist ebenfalls quelloffen. Wir freuen uns über Ihre Beiträge, Vorschläge und Ihr Feedback.

Screenshot des Documentation Portals

Download

Laden Sie die aktuelle XLT-Version herunter

XLT Software-Paket

Laden Sie XLT kostenlos herunter (ca. 100 MB). Es unterstützt MS Windows, OSX, Linux und FreeBSD. Wenn Java auf dem Rechner läuft, läuft auch XLT. JDK 17 erforderlich, JDK 21 empfohlen.

Das Quick Start Guide stellt Informationen für den Einstieg zur Verfügung. Die Dokumentation ist quelloffen, so dass Sie gern dazu beitragen und sie verbessern können.

Erhalten Sie auf GitHub den gesamten Source Code. Wir freuen uns über Ihre Beiträge, falls Sie zur Entwicklung beitragen möchten.

Amazon Machine Images

Wir bieten AMIs für die Verwendung mit Amazon EC2. In den Images ist XLT installiert und für die Verwendung als Lastagenten konfiguriert. Amazon wird Ihnen die Nutzung der Infrastruktur in Rechnung stellen. Stellen Sie sicher, dass Ihre Security Group die Kommunikation auf Port 8500, dem voreingestellten XLT-Agent-Port, erlaubt.

Eine Liste der aktuellen Images finden Sie neben den Release-Informationen auf GitHub.

Wenn eine containerisierte Bereitstellung oder eine alternative Vorlage besser zu Ihren Anforderungen passt, sehen Sie sich unsere XLT-Packer-Projekt an.

Lizenzen

XLT ist Open Source unter der Apache Lizenz 2.0