Browser-Based Web Application Load Testing With Command Throttling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Browser-based load testing is resource-intensive due to the need for separate browser instances for each user session, and manually adding wait commands to reduce resource usage is laborious and difficult to maintain.
Innovation Solution
Implement a throttling test mode where each browser operation command executes for a minimum length of time, with an option to override this time for specific commands, reducing resource usage without manual script modifications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If browser-based load testing is performed with separate browser instances for each user session, then frontend performance testing capability is improved, but resource consumption increases significantly
Solution Approach 1:
Multiple browser instances are merged into a single shared browser context, allowing them to share rendering resources, memory, and execution environment while maintaining separate test script executions. This combining approach enables frontend performance testing across multiple user sessions without proportionally increasing resource consumption.
Solution Approach 2:
Instead of creating fully independent browser instances for each user session, the system creates lightweight copies or simulations of browser contexts that share the underlying rendering engine and resources. This allows multiple test executions to proceed simultaneously with reduced overhead compared to full browser instances.
2Use of energy by moving object
If wait commands are manually added to test scripts to reduce resource usage, then resource consumption is reduced, but script maintenance complexity increases
Solution Approach 1:
The system automatically manages test execution timing and resource allocation without requiring manual intervention. The test execution engine dynamically controls the pace of test script execution and manages browser instance lifecycle, eliminating the need for manual wait commands while maintaining resource efficiency.
Solution Approach 2:
The system introduces executable duration parameters that control how long each browser operation command runs. By adjusting these parameters dynamically, the system optimizes resource consumption without requiring structural changes to test scripts, maintaining both resource efficiency and script maintainability.
3Productivity
If more browser instances are run concurrently to simulate more user sessions, then testing throughput is improved, but resource availability is exhausted
Solution Approach 1:
Multiple browser instances share common resources including the rendering engine, memory space, and execution context. This resource sharing enables higher testing throughput by allowing more concurrent test executions without proportionally increasing resource requirements.
Solution Approach 2:
The system implements periodic control of test execution pace through executable duration parameters, allowing test scripts to run in controlled intervals. This periodic execution pattern enables higher overall throughput by efficiently managing resource allocation over time rather than requiring all instances to run simultaneously at full speed.
Data Source
AI summary
For each of a number of test commands of a test script for browser-based load testing of a web application hosted by a server device communicatively connected to the test device over a network, the test command is executed within a browser instance running on the test device and simulating usage of the web application by a user. In response to determining that the test command that has been executed is a browser operation command, that the test command executes for a minimum length of time is ensured in a throttling test mode in which the web application is tested via the browser instance.


