To make load testing more realistic, to test a website, StresStimulus records client actions and server responses. After that, you can specify what performance conditions you need to emulate and launch a test. StresStimulus instantiates multiple virtual users (VUs) and replays the recorded actions. The Webserver receives simulated traffic and engages in operations as it is accessed by the real users. While interacting with the server, StresStimulus closely monitors performance metrics from the user’s perspective, but on the server-side. It displays the test real-time dashboard showing the progress of the main test parameters, and real-time performance graphs, giving the first impression of the website's speed and scalability. After the test is complete, StresStimulus aggregates collected information and generate various interactive reports with actionable information that helps answer the performance questions from the previous chapter.
- Records user actions from a web browser, RIA, mobile device, or another HTTP client.
- Simulates traffic anticipated from the user base. A huge number (up to a million or more) of VUs can be instantiated.
- Realistically emulates the web production environment not only in terms of the amount of load but also in terms of application traffic content.
- Creates and configures test scripts using the UI without programming. The script editor is available but is optional.
- Automatically tests how a website works with various user entries, such as predetermined or randomly generated business data.
- Autocorrelates session tokens, cookies and hidden fields in all major web platforms.
- Automatically discovers dynamic parameters and creates parameterization rules to maintain high test fidelity.
- Monitors performance on the client and resources used on the server-side under different load conditions.
- Aggregates performance details by request, page, transaction, test case, VU, and other criteria, and generates customizable graphs and reports.
- Quickly pinpoints performance bottlenecks due to high visibility into the test log stored in a queryable database. For example, a waterfall chart of a page or a transaction under different load conditions can be quickly displayed and compared side-by-side for any two VUs or test iterations. It gives a precise assessment of the user experience.
- Tracks down bugs causing errors or timeouts, which can only be detected under stress. Typically, such bugs are missed in functional testing.
- Facilitates on-premise performance testing or in the cloud using, for example, AWS.
To make load testing more realistic, the following application performance-impacting factors are emulated:
- Browser behavior (caching, correlation, concurrent connections handling).
- Users’ behavior (think time, concurrency, independence, the composition of new and returning users, composition of returning users restarting browser on every iteration, or keeping it open).
- Network behavior (upstream and downstream bandwidth).
- User-based geographic distribution, when multiple load generation agents in the cloud are positioned in specified regions.
- No labels