From e6e059c207632dad8795eb52a1a7e0f5231a72cf Mon Sep 17 00:00:00 2001 From: amanchopra1905 Date: Mon, 3 Feb 2025 15:53:42 +0530 Subject: [PATCH] hyperexecute jmeter --- docs/hyperexecute-run-jmeter-tests.md | 92 +++++++++++++++------------ 1 file changed, 51 insertions(+), 41 deletions(-) diff --git a/docs/hyperexecute-run-jmeter-tests.md b/docs/hyperexecute-run-jmeter-tests.md index f95a2ae31..e3b426fe8 100644 --- a/docs/hyperexecute-run-jmeter-tests.md +++ b/docs/hyperexecute-run-jmeter-tests.md @@ -41,7 +41,6 @@ import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/co }) }} > - > This is currently in the **Beta** version. ## Prerequisites @@ -50,6 +49,8 @@ import {YOUR_LAMBDATEST_USERNAME, YOUR_LAMBDATEST_ACCESS_KEY} from "@site/src/co You can use your own project to configure and test it. For demo purposes, we are using the sample repository. +> By default, HyperExecute supports **standard Thread Group** but you can use other custom thread groups as well. + :::tip Sample repo Download or Clone the code sample for the JMeter Performance Testing from the LambdaTest GitHub repository to run the tests on the HyperExecute. @@ -130,56 +131,65 @@ You can analyze the number of requests sent on that particular time. HyperExecute ## Handling Special Scenarios: Overriding and Default Values -### Scenario 1: Overriding Values via Projects portal -When executing performance tests using HyperExecute, you have the option to override default parameters directly in the Projects portal. Let’s explore a sample scenario to understand how HyperExecute handles these overrides. -You configure the following parameters in the HyperExecute UI: -- **Virtual Users :** (The total number of simulated users for the test): 500 -- **Ramp-Up Time :** 1 minute -- **Total Duration :** 2 minutes -- **Regions :** 2 (50% distribution each) -- **Maximum Users per Machine :** 100 -#### Resulting Test Distribution: -- **Load Distribution Across Regions :** - - The total 500 virtual users are divided equally between the two regions. - - Each region is allocated 250 users (500 users ÷ 2 regions). -- **Machine Allocation :** Since a single machine can handle a maximum of 100 users, each region requires multiple machines to support its load: - - **Region 1 :** 250 users → 3 machines (lets say it distributed as 84, 83, 83 users per machine). - - **Region 2 :** 250 users → 3 machines (lets say it distributed as 84, 83, 83 users per machine). +
+

Scenario 1: Overriding Values via Projects portal

-- **User Allocation per Machine:** Users are evenly distributed among machines to ensure optimal utilization and balanced load: -For example, in Region 1: -Machine 1 = 84 users, Machine 2 = 83 users, Machine 3 = 83 users. + When executing performance tests using HyperExecute, you have the option to override default parameters directly in the Projects portal. Let’s explore a sample scenario to understand how HyperExecute handles these overrides. -#### Key Takeaways: -- **Flexible Overrides :** HyperExecute dynamically adjusts the load distribution and machine allocation based on your specified parameters. -- **Optimal Resource Utilization :** It ensures that no machine exceeds the maximum user threshold, maintaining a balanced and efficient test execution. -- **Region-Specific Allocation :** Users are distributed proportionally based on the defined load percentages for each region. + You configure the following parameters in the HyperExecute UI: + - **Virtual Users :** (The total number of simulated users for the test): 500 + - **Ramp-Up Time :** 1 minute + - **Total Duration :** 2 minutes + - **Regions :** 2 (50% distribution each) + - **Maximum Users per Machine :** 100 -This approach ensures smooth execution of performance tests and provides precise control over resource utilization, enabling you to simulate real-world scenarios effectively. + #### Resulting Test Distribution: + - **Load Distribution Across Regions :** + - The total 500 virtual users are divided equally between the two regions. + - Each region is allocated 250 users (500 users ÷ 2 regions). + + - **Machine Allocation :** Since a single machine can handle a maximum of 100 users, each region requires multiple machines to support its load: + - **Region 1 :** 250 users → 3 machines (lets say it distributed as 84, 83, 83 users per machine). + - **Region 2 :** 250 users → 3 machines (lets say it distributed as 84, 83, 83 users per machine). + + - **User Allocation per Machine:** Users are evenly distributed among machines to ensure optimal utilization and balanced load: + For example, in Region 1: + Machine 1 = 84 users, Machine 2 = 83 users, Machine 3 = 83 users. + + #### Key Takeaways: + - **Flexible Overrides :** HyperExecute dynamically adjusts the load distribution and machine allocation based on your specified parameters. + - **Optimal Resource Utilization :** It ensures that no machine exceeds the maximum user threshold, maintaining a balanced and efficient test execution. + - **Region-Specific Allocation :** Users are distributed proportionally based on the defined load percentages for each region. + + This approach ensures smooth execution of performance tests and provides precise control over resource utilization, enabling you to simulate real-world scenarios effectively. +
-### Scenario 2: Default Parameters -In this scenario, you proceed without overriding the default values in the HyperExecute Projects portal. The configuration parameters from your JMeter file and project setup are applied as-is. +
+

Scenario 2: Default Parameters

+ + In this scenario, you proceed without overriding the default values in the HyperExecute Projects portal. The configuration parameters from your JMeter file and project setup are applied as-is. -#### Scenario Details: -- **Total Users :** 250 (Specified in the JMeter .jmx file.) -- **Regions :** 2 -- **Machines :** 3 (Each region is allocated three machines.) + #### Scenario Details: + - **Total Users :** 250 (Specified in the JMeter .jmx file.) + - **Regions :** 2 + - **Machines :** 3 (Each region is allocated three machines.) -#### Resulting Test Distribution: -- **Load Distribution Across Regions :** The total of 250 virtual users is not divided across the regions because no overrides were applied. Instead, each region receives the full 250 users. + #### Resulting Test Distribution: + - **Load Distribution Across Regions :** The total of 250 virtual users is not divided across the regions because no overrides were applied. Instead, each region receives the full 250 users. -- **Machine Allocation :** Each region is allocated three machines. The total user load for the region is replicated across all three machines in the region: - - **Region 1 :** 3 machines → 250 users per machine. - - **Region 2 :** 3 machines → 250 users per machine. + - **Machine Allocation :** Each region is allocated three machines. The total user load for the region is replicated across all three machines in the region: + - **Region 1 :** 3 machines → 250 users per machine. + - **Region 2 :** 3 machines → 250 users per machine. -- **User Allocation per Machine :** Each machine in both regions processes **250 users**, resulting in a total of 750 users (250 users × 3 machines) per region. + - **User Allocation per Machine :** Each machine in both regions processes **250 users**, resulting in a total of 750 users (250 users × 3 machines) per region. -#### Key Takeaways: -- **Default Behavior :** Without overrides, the user load from the .jmx file is replicated across all configured machines in each region. -- **Resource Replication :** Instead of splitting the total users among machines, HyperExecute applies the same load to each machine in a region. -- **Importance of Overrides :** To distribute users proportionally across machines and regions, use the UI to override parameters such as total users, maximum users per machine, or load percentages. + #### Key Takeaways: + - **Default Behavior :** Without overrides, the user load from the .jmx file is replicated across all configured machines in each region. + - **Resource Replication :** Instead of splitting the total users among machines, HyperExecute applies the same load to each machine in a region. + - **Importance of Overrides :** To distribute users proportionally across machines and regions, use the UI to override parameters such as total users, maximum users per machine, or load percentages. -This behavior highlights how HyperExecute ensures flexibility in test execution while allowing for configuration control based on project requirements. \ No newline at end of file + This behavior highlights how HyperExecute ensures flexibility in test execution while allowing for configuration control based on project requirements. +