From Performance Testers For Performance Testers
What is XLT?
The Load Test Tool for Software Development
Born out of necessity, XLT has grown into a premier load and performance testing tool, featuring unrivaled capabilities and scale.
XLT is not your everyday load testing tool. Imagine it as an extremely sharp Swiss Army knife, offering ultimate versatility and flexibility. Whether you face extraordinary challenges or navigate everyday scenarios, XLT ensures you are always prepared.
Ready-to-use, extremely detailed reports and the ability to write tests in pure Java code were core requirements from day one. Tests can be scaled extensively, right out of the box.
Develop and run tests directly in your preferred IDE as JUnit tests, making them fully debuggable. Furthermore, the result browser greatly aids diagnostics.
XLT is open source under the Apache License. Check out GitHub.
The Quick Feature Summary
XLT Feature Highlights
Writing
Test scripts are written in Java with no limits. Debug, add libraries, and use your IDE's power.
Load Profiles
Flexible load profiles for user and arrival rate models. The latter addresses coordinated omission.
Reporting
Extensive reporting where no data is dropped. Recreate views, merge, split, and annotate data anytime.
Scale
Scale to any number of machines and users. Coordinate tests easily, even offline without data loss.
Debugging
Debug with our result browser or your favorite Java IDE just like any other program.
Open Data
All data is open and documented, ready for custom data crunching. Nothing is dropped!
Real Browsers
Use real browsers for load testing complex setups. If it can be test automated, it can be load tested.
Configuration
Configuration belongs in the code base. Use property files or YAML with our enhanced test suites.
These are highlights of XLT's extensive feature set. Every feature was developed with a specific testing need and its practical application as the driving force. Nothing was implemented just to tick a checklist.
Features
Combining Decades of Expertise with Innovative Tech
Proven Technologies
Built on Known Components
Leverage your existing Java, JUnit, WebDriver, and HttpClient skills. XLT's seamless integration, extensibility, and ease of use make it a powerful tool.
Use your preferred Java IDE for scripting and debugging. Build load tests as JUnit test cases, automate via command-line, test real browsers with WebDriver, and manage projects with Maven or Gradle.
Because of the proven and known stack, it is AI-ready from the beginning.
Deployment & Cloud
Easy to install, no OS dependencies whatsoever
XLT is platform-independent: just unzip it. Write on one OS, deploy on another.
Deploy to any cloud supporting Java 21+. Use our free AWS EC2-AMIs or create custom images with XLT-Packer.
Controller-agent communication is secured via authenticated HTTPS. Simple, flexible, and ready for your deployment tools.
Awesome Reporting
Comprehensive and out of the box
XLT provides best-practice reports out of the box, based on decades of testing experience.
Load Test Reports
Get a complete picture including metrics like runtime totals, averages, percentiles, SLAs, and errors. Data is available at all levels, from transactions to requests. View example.
Comparison Reports
Uncertain if changes improved performance? Comparison reports provide clear data to confidently assess impact. View example.
Trend Reports
Visual history of your application's performance, using color-coded charts to easily identify trends and issues across multiple test runs.
Easily Adjustable
Add data sources, customize reports, and build test frameworks
Because every environment is unique, XLT offers a wide range of extensions and modifications to ensure a perfect fit.
Reports
Full control over customization. CSS and render templates are included, allowing you to easily adjust content, summarize data, or design new formats.
Custom and External Data
Log detailed system information with custom values, timers, and extended logging. Include data from external files for a comprehensive view.
Use Java
Need something XLT doesn't offer out-of-the-box? Use Java to customize and extend its capabilities.
Scalable
Any number of machines, locations, and users
Utilize a massive number of machines for load testing and effortlessly scale across datacenters. XLT orchestrates load distribution automatically.
Differential and concurrent up- and downloads ensure maximum speed, distributing load across all agents seamlessly.
Reports can even be split by location later, if needed.
Load Profiles
Realistic, flexible, and predictable
Flexible load profiles ranging from steady user counts to arrival rates. Compose long-running, freely configurable test setups to mirror daily traffic.
Need a slow ramp-up followed by sudden peak traffic, then returning in waves? XLT easily handles complex, custom scenarios with zero limits.
Shareable
Share results
XLT reports are purely HTML and completely detached from XLT after creation, making them incredibly easy to share.
Just zip them, email them, upload them, or attach them anywhere you prefer.
Did you know that you can start your load test from one machine, and collect the results from another? Or maybe your co-worker can collect the data later and analyze it for you, while you're already on your way to a meeting.
See Everything
Captured data visualized
The result browser is your tool to visually check loaded data and debug problems.
During script development, it shows all details about your executed script, ensuring full coverage and accurate traffic matching.
When errors occur during load testing, the last moments of the transaction are saved. Review downloaded data and technical details to see exactly what happened.
Verify Everything
Use assertions to verify
A test is only as good as its verifications. XLT encourages extensive validation to ensure transferred data matches expectations.
Use full JUnit assertion syntax or Hamcrest. XLT provides access to all sub-requests of a page for highly detailed validation.
Made for Automation
Known concepts
XLT flawlessly integrates into any automation setup, from simple shell scripts to complex CI/CD pipelines.
Designed to work perfectly with your favorite IDE, command line tools, and build systems.
Configurable
Adjust many parameters as needed
Adjust numerous parameters—timeouts, keep-alives, compression, permitted hosts, thinktimes, error handling, and more—to perfectly match your testing needs.
XLT's rich option set allows for comprehensive testing of diverse configurations, often customizable on a per-scenario basis.
Archivable
Plain formats
XLT uses open formats for results and reports. Result data and HTML reports are separated, allowing flexible storage decisions based on your needs. This also fits well with modern AI-driven data strategies.
Full test configurations are stored, making it effortless to repeat the exact same run days or weeks later.
Documentation
Resources and Links
The documentation is open source too, and we welcome your contributions, suggestions, and feedback.
Download
Get the Latest XLT Version
XLT Software Package
Supports Windows, OSX, Linux, and FreeBSD. If it runs Java (JDK 21 required), it runs XLT. The download is about 100 MB.
The Quick Start Guide provides information to get started. The documentation is open source, allowing you to contribute and improve it.
Visit GitHub for the full source code. We welcome your contributions.
Amazon Machine Images
We provide AMIs for Amazon EC2 with XLT pre-installed and configured as load agents. Amazon charges for infrastructure usage. Ensure your security group permits communication on port 8500.
A list of current images is available alongside the release information on GitHub.
For container deployments or custom templates, explore our XLT-Packer Project.
Licensing
XLT is Open Source under the Apache License v2.0