Xceptance LoadTest - Features
Open / Close All The philosophy of XLT is to combine regression and load tests within one tool. XLT speaks Java and thus the language of most developers, and it also supports the most popular Java development environments.
Programming Model
- Java or Ruby as Scripting Languages
- XLT does not use any proprietary languages, instead applying Java or Ruby to create test cases. Test case creation and maintenance can be carried out with your preferred IDE, such as Eclipse or NetBeans. This way, XLT takes advantage of an existing infrastructure, enables own libraries to be easily integrated and reduces the training effort.
- Script Developer
- XLT Script Developer is an easy and comfortable way to start writing web tests. It operates as a Firefox add-on and provides an easy-to-use user interface for developing and running test cases or entire test suites. XLT Script Developer records the page flow while the user navigates through a website. For enhanced scenarios or more complex validations, test cases can be exported to Java to edit them in an IDE.
- Test Automation
- Since every test case is also a JUnit 4 test case, existing build environments (like Ant or Maven) can be used to execute them, for example, to carry out automated regression testing or load testing after each build.
- Regression Tests Connected with Load Tests
- Every automated functional regression test can be used, with very few changes, as a load test, thus avoiding the otherwise necessary work of creating new test cases.
Framework
- Test Framework
- The XLT test framework provides a comprehensive API with Java classes, which make it easier to create test cases. At the same time, the framework structures the test code into individual, reusable steps.
- Web-based Tests
- For web-based tests, the framework provides a (headless) browser that can emulate Internet Explorer or Firefox behaviour. The test code works directly with the HTML code and thus also directly with links and forms. Unlike HTTP-based tools, dynamic data are thus handled simply and directly. Changes to links or forms have only minor effects on the stability of the tests.
- JavaScript
- XLT can also execute client-side JavaScript in the emulated web browsers and that way it simplifies the creation of test cases for typically dynamic Web 2.0 applications.
- Extensive Measurement Data
- During the execution of tests, XLT collects extensive data, such as the runtime of every request, the number of errors that occurred, or, optionally, the responses from the server and the generated webpages. Through the API, additional data sources can also be configured.
Reports
- Comprehensible HTML Reports
- From the data recorded, XLT creates comprehensive test reports in HTML format. The reports include both, the accumulated data in tabular form as well as data about the chronological sequence in the form of graphics.
- Customizable
- The appearance and content of the reports are completely customizable. The client’s own company logo and design can be included, and reports can always be enhanced and expanded.
- Open Formats
- All the data are in open formats, and can thus be analyzed with the help of other tools. XLT can also easily be integrated with other programs.
- Comparison Reports
- With XLT, you can create comparison reports to get a quick and detailed overview over performance improvements or performance degradation between two test runs.
- Trend Reports
- You can create trend reports to visualize the evolution of test results over multiple test runs by different colors.
Load Tests
- Load Profiles
- XLT can simulate a fixed load profile with a maximum number of virtual users or a planned arrival rate. Additionally, warm-up, ramp-up, and measurement periods can be configured individually for each user type.
- Scalability
- XLT supports the use of a distributed, highly scalable load-test environment. In order to generate the desired load, an almost unlimited number of test machines can work together as a test cluster. The defined load profile is automatically distributed equally across the cluster.
- Cloud Service
- Especially extensive load tests for which existing load machines are not adequate can take advantage of the XLT Cloud Service. This provides a test-machine pool of any size necessary, from which a sufficiently large test cluster can be assembled.
- Flexible Control
- With XLT, load tests are controlled by way of a command-line interface and configuration files. The master controller and the load agents communicate only via HTTPS, for example, to distribute test cases or to store result data. This means, tests can also be executed in environments which are widely distributed or to which access is extremely limited. Several tests can be run simultaneously from one machine.
- Loose Coupling of Controller and Agents
- You can disconnect the master controller from the agents during a load test and reconnect it later. This enables to start, monitor and analyze a load test from different locations, different machines or with mobile devices.
- Agent Monitoring
- The resource usage (CPU, memory, threads) of all load agents is monitored during the test runtime. The collected monitoring data is also shown in the test reports to recognize resource bottlenecks on the agent machines.
Regression Tests
- Agile Practices and Test Driven Development
- XLT supports agile practices and test driven development by consistently implementing all tests as JUnit 4 test cases. Therefore it is a simple matter to make it part of your existing development processes or to integrate automatic regression testing into continuous integration environments.
- Free Basic License
- The free Basic License allows the creation and execution of regression tests without any time limitation, for non-commercial as well as commercial applications. This license type permits development and recurring execution of all test scenarios with up to five virtual users. This way, it is already possible to simulate a small degree of parallelism to detect problems like race conditions or deadlocks.
Platform and Environment
- Platform Independence
- XLT is implemented in Java. All the Java or Ruby test cases are also executed within a Java virtual machine. XLT can thus be used on any and every platform for which a JDK 6 (or higher) is available.
- Heterogeneity
- Load tests can be executed in heterogeneous environments. It is possible to distribute the load agents across Solaris and Linux machines yet still control the test from a Window PC or Macintosh. Any sort of combination is possible.
- Simple Installation
- XLT is installed by unpacking an archive. This makes a quick manual installation possible, but also simplifies an automatic installation in the context of complex build and deployment processes.
- Archiving
- All XLT data are stored by the master controller in the file system and filed per test run in a separate subfolder. The most important configuration files, though, are stored together with the test results, so that tests are easy to repeat. The complete test result is thus very easily archived.


