Performance Testing Fundamentals Using Apache JMeter

Inquire now

Performance Testing Fundamentals Using Apache JMeter Overview

This four-day, hands-on training course equips QA testing professionals with the foundational knowledge and practical skills required to plan, design, execute, monitor, and analyze basic performance tests using Apache JMeter.

Participants will learn the different types of performance testing, including baseline, load, stress, spike, endurance, volume, scalability, and capacity testing. They will understand when each test type should be used and how it supports performance-risk assessment and system-readiness decisions.

Using standard training applications and sample APIs, participants will build JMeter test plans, create realistic workloads, apply parameterization and correlation, execute controlled tests, and analyze key performance indicators such as response time, throughput, latency, error rate, and percentile results.

The course emphasizes team-based exercises and practical scenarios suitable for a single QA testing team. By the end of the training, participants should be able to conduct basic performance testing independently, interpret JMeter reports, identify potential performance problems, and communicate findings to developers, technical teams, and business stakeholders.

 

Duration 4 Days – 28 hrs.

 

Objectives 

  • Explain the purpose and business value of performance testing.
  • Differentiate functional testing from performance testing.
  • Identify the appropriate type of performance test for a given objective.
  • Explain baseline, load, stress, spike, endurance, volume, scalability, and capacity testing.
  • Identify performance requirements and measurable acceptance criteria.
  • Understand workload models, user journeys, concurrency, pacing, and transaction volume.
  • Install and configure Apache JMeter.
  • Navigate the JMeter interface and understand its major components.
  • Create and organize basic JMeter test plans.
  • Record or manually create HTTP and HTTPS test scripts.
  • Test standard web applications and REST APIs.
  • Use thread groups, samplers, controllers, timers, assertions, and listeners.
  • Parameterize test data using external files.
  • Apply basic correlation to handle dynamic data.
  • Add validation and error checking to test scripts.
  • Configure realistic user loads, ramp-up periods, loops, and test durations.
  • Execute performance tests safely and systematically.
  • Monitor test execution and identify scripting or application errors.
  • Generate and interpret JMeter reports.
  • Analyze response time, throughput, latency, error rate, percentiles, and transaction results.
  • Differentiate application problems from test-script or load-generator limitations.
  • Identify basic performance bottlenecks and areas requiring further investigation.
  • Document test results, observations, risks, and recommendations.
  • Perform an end-to-end basic performance-testing exercise as a QA team.

 

Target Audience 

  • Manual QA testers
  • Software test engineers
  • QA analysts
  • Junior performance testers
  • Test automation engineers
  • Quality engineers
  • Software developers involved in performance validation
  • Technical support and application support personnel
  • QA team leads
  • Test leads and test coordinators
  • Professionals transitioning into performance testing

 

Prerequisites 

  • Basic knowledge of software testing concepts.
  • Familiarity with test cases, test scenarios, defects, and expected results.
  • Basic understanding of web applications and client-server systems.
  • Basic knowledge of HTTP methods such as GET, POST, PUT, and DELETE is recommended.
  • Basic familiarity with APIs, JSON, HTML, or browser developer tools is helpful but not mandatory.
  • Basic spreadsheet skills for reviewing and organizing test results.
  • A laptop with administrator rights or preinstalled training software.
  • Reliable internet or network access to the designated training applications.
  • No previous JMeter or programming experience is required.

 

Technical Requirements:

Each participant should have:

  • Apache JMeter installed
  • A compatible Java runtime
  • A supported web browser
  • Text editor or development editor
  • Spreadsheet application
  • Access to the standard training web application
  • Access to sample REST API endpoints
  • Permission to access the designated training environment
  • Sufficient local processing power and memory for basic test execution

All exercises must be conducted only against authorized training applications and environments. Participants should not run load tests against production systems or public websites without formal permission.

 

Course Outline 

Day 1: Performance-Testing Fundamentals and JMeter Essentials

Module 1: Introduction to Performance Testing 

  • What is performance testing?
  • Purpose and business value
  • Functional versus performance testing
  • Performance testing within the software-development lifecycle
  • Shift-left performance testing
  • Roles and responsibilities
  • Common performance risks
  • Performance-testing limitations
  • Testing in development, test, staging, and production-like environments
  • Importance of authorization and test-environment protection

 Module 2: Types of Performance Testing 

  • Baseline testing
  • Load testing
  • Stress testing
  • Spike testing
  • Endurance or soak testing
  • Volume testing
  • Scalability testing
  • Capacity testing
  • Failover and resilience testing overview
  • Selecting the appropriate test type
  • Combining different test types in a testing strategy

 Module 3: Performance Requirements and Metrics 

  • Business and technical requirements
  • Service-level agreements
  • Service-level objectives
  • Performance acceptance criteria
  • Response time
  • Latency
  • Throughput
  • Transactions per second
  • Requests per second
  • Concurrent and active users
  • Error rate
  • Availability
  • Average versus median
  • Percentiles: P90, P95, and P99
  • Resource-utilization overview
  • Establishing baselines and targets

 Module 4: Introduction to Apache JMeter 

  • Apache JMeter capabilities and limitations
  • JMeter architecture
  • Installing and launching JMeter
  • Understanding the graphical user interface
  • Test Plan and WorkBench concepts
  • Thread groups
  • Samplers
  • Logic controllers
  • Configuration elements
  • Timers
  • Assertions
  • Pre-processors and post-processors
  • Listeners
  • Saving and organizing test plans

Hands-on Exercises

  • Install or validate the JMeter environment.
  • Explore the JMeter interface.
  • Create the first HTTP test plan.
  • Send requests to a standard training application.
  • Add basic assertions and listeners.
  • Review initial response-time and error results.

 

Day 2: JMeter Test-Script Development

Module 5: Creating Web and API Test Scripts 

  • Understanding HTTP requests and responses
  • HTTP request methods
  • Request headers and content types
  • Query parameters
  • Form data
  • Request bodies
  • Cookies and sessions
  • Testing REST APIs
  • Working with JSON responses
  • Organizing requests into business transactions
  • Recording versus manually creating scripts

 Module 6: Building Maintainable Test Plans 

  • Naming conventions
  • Test-plan structure
  • Test fragments
  • Reusable components
  • HTTP Request Defaults
  • HTTP Header Manager
  • Cookie Manager
  • Cache Manager
  • User-defined variables
  • Transaction Controller
  • Simple, Loop, If, and While Controllers
  • Separating scripts, data, and configuration
  • Test-script documentation

 Module 7: Parameterization and Test Data 

  • Why parameterization is required
  • Static versus dynamic data
  • Using CSV Data Set Config
  • Creating test-data files
  • Unique and reusable test data
  • Sharing and recycling data
  • Data exhaustion
  • Managing accounts and credentials
  • Protecting sensitive test information

 Module 8: Correlation and Dynamic Values 

  • Understanding correlation
  • Identifying dynamic values
  • Extracting data from responses
  • Regular Expression Extractor
  • JSON Extractor
  • Boundary Extractor
  • Reusing extracted values
  • Session and authentication tokens
  • Debugging extracted variables
  • Basic correlation troubleshooting

Hands-on Exercises

  • Create a multi-step user journey.
  • Submit data to a training web application.
  • Build a basic API test.
  • Parameterize users and business data.
  • Extract and reuse a dynamic value.
  • Add transaction names and response assertions.
  • Validate the complete script before applying load.

 

Day 3: Workload Modelling and Test Execution

Module 9: Workload Modelling 

  • Understanding production usage
  • Identifying critical business transactions
  • User profiles and workload distribution
  • Concurrent versus total users
  • Transactions per hour
  • Think time and pacing
  • Ramp-up and ramp-down
  • Iterations and duration
  • Peak and normal workloads
  • Open and closed workload concepts
  • Creating a basic workload model
  • Assumptions and limitations

 Module 10: Configuring Load Scenarios in JMeter 

  • Thread Group settings
  • Number of users or threads
  • Ramp-up period
  • Loop count
  • Duration and scheduling
  • Timers and realistic user behaviour
  • Transaction distribution
  • Test-data allocation
  • Assertions under load
  • Handling time-outs
  • Configuring controlled test scenarios

 Module 11: Executing Performance Tests 

  • Script validation before testing
  • Smoke and shakedown tests
  • Baseline testing
  • Gradual load increases
  • Load-test execution
  • Stress-test execution
  • Spike-test demonstration
  • Endurance-test planning
  • Running JMeter in GUI mode for scripting
  • Running JMeter in non-GUI mode for load execution
  • Command-line execution
  • Saving test results
  • Stopping a test safely
  • Monitoring errors during execution

 Module 12: Test Environment and Monitoring Fundamentals 

  • Test-environment readiness
  • Production-like environment considerations
  • Network and data dependencies
  • Load-generator resources
  • Server-side monitoring overview
  • CPU, memory, disk, and network indicators
  • Application and database monitoring overview
  • Coordinating with developers, infrastructure teams, and database administrators
  • Distinguishing application issues from test-tool limitations
  • Avoiding misleading test results

Hands-on Exercises

  • Create a basic workload model.
  • Configure users, ramp-up, duration, and pacing.
  • Execute a script-validation test.
  • Run baseline and controlled load tests.
  • Execute JMeter in non-GUI mode.
  • Capture results and test observations.
  • Compare results from different workload levels.

 

Day 4: Results Analysis, Reporting, and Practical Assessment

Module 13: Understanding JMeter Results 

  • Sample and transaction results
  • Response time
  • Connect time
  • Latency
  • Throughput
  • Error percentage
  • Data received and sent
  • Active threads
  • Average, minimum, and maximum results
  • Median and percentile results
  • Interpreting P90, P95, and P99
  • Understanding outliers
  • Reading JMeter listeners
  • Generating the HTML Dashboard Report

 Module 14: Performance Analysis 

  • Comparing results with acceptance criteria
  • Baseline versus load results
  • Identifying performance degradation
  • Recognizing saturation points
  • Response-time trends
  • Throughput trends
  • Error patterns
  • Correlating client-side and server-side results
  • Identifying possible application, database, infrastructure, or network bottlenecks
  • Recognizing script and load-generator problems
  • Avoiding incorrect conclusions
  • Determining when additional investigation is required

 Module 15: Performance-Test Reporting 

  • Components of a performance-test report
  • Test objectives and scope
  • Environment and application details
  • Workload model
  • Test data and assumptions
  • Results and observations
  • Graphs and tables
  • Acceptance-criteria evaluation
  • Defects and risks
  • Bottleneck findings
  • Limitations
  • Recommendations
  • Executive versus technical reporting
  • Presenting results to stakeholders

 Module 16: Basic Performance-Testing Workflow 

  • Requirements gathering
  • Test planning
  • Environment preparation
  • Script development
  • Script validation
  • Workload modelling
  • Test execution
  • Monitoring
  • Results analysis
  • Defect reporting
  • Retesting
  • Final reporting and sign-off
  • Maintaining reusable JMeter assets

 Final Team-Based Practical Assessment 

  • Review a sample application scenario.
  • Identify the appropriate performance-test type.
  • Define basic performance objectives and acceptance criteria.
  • Select critical business transactions.
  • Develop a JMeter test plan.
  • Add parameterization, correlation, timers, and assertions.
  • Create a basic workload model.
  • Execute baseline and load tests.
  • Generate a JMeter HTML report.
  • Analyze response time, throughput, percentiles, and errors.
  • Identify potential performance concerns.
  • Prepare and present a concise performance-test report.

 

Inquire now

Best selling courses

CLOUD COMPUTING

Terraform

Terraform is a configuration orchestration tool for building and managing infrastructure on cloud & data centers. The course is instructor-led, live training (onsite or remote), and is designed for Engineers with little or no previous experience managing infrastructure. The course talks about in-depth Terraform syntax and techniques used to automate the setup and deployment of infrastructure.

Duration  3 days – 21 hrs    Overview    The ITIL Leadership – Digital and IT Strategy training course is designed for senior IT professionals, managers, and leaders who seek to navigate the complex landscape of digital transformation and IT strategy. This course focuses on providing strategic insights, leadership skills, and practical approaches for aligning...

PROGRAMMING / CODING

Spring Architecture and Design

Spring Cloud is a platform for building Java-based distributed systems and microservices. Building complex enterprise applications is challenging. Any change made to a part of the systems could trigger the need for changing the design of the entire system. By the end of this training, participants will have a solid understanding of Service-Oriented Architecture (SOA) and Microservice Architecture as well practical experience using Spring Cloud and related Spring technologies for rapidly developing their own cloud-scale, cloud-ready microservices.

BUSINESS INTELLIGENCE

Dax

Duration 5 days – 35 hrs   Overview The DAX (Data Analysis Expressions) Training Course is designed to provide participants with a comprehensive understanding of DAX, the powerful formula language used in Power BI, Excel, and SQL Server Analysis Services. This course covers the essential concepts, functions, and techniques required to create advanced calculations and...

OPERATING SYSTEMS

Linux Fundamentals

Linux Fundamental provides students a thorough introduction to Linux™ for those who are new to the Linux environment. Delegates will learn how to manage files and directories, utilize the vi editor, work with Linux security mechanisms to protect files and programs, work with the Linux shell to control the flow and processing of data through pipelines, design and write shell programs of moderate complexity, and manage multiple concurrent processes in order to achieve higher utilization of Linux. They will learn how to perform basic operations on the system and how quickly to solve problem.

PROGRAMMING / CODING

Google Apps Script

The Google Apps Script training course give you a detailed knowledge on coding like Automating data calculation, Fetching and sending data from third party software like Trello & Salesforce, connecting different sheets, Documents and other tools, Setting a trigger based on an event. This course is ideal for someone who use google sheets and have no coding background.

This workshop teaches the participants how to design and develop server side applications using the event-driven, non-blocking model framework Node.js. This program inducts the participant in some of the advanced concepts of the JavaScript language so that the participant is well equipped to build end-to-end application using JavaScript.

Duration: 3 days – 21 hrs   Overview This training course is designed to provide participants with a comprehensive understanding of Portfolio Management and Contract Management, focusing on best practices, tools, and techniques. The course covers the strategic alignment of projects within a portfolio, effective management of contracts, risk management, and optimization of resources to...

// BG EARTH WHEN NOT PLAYING

We use cookies on our website to personalize your experience by storing your preferences and recognizing repeat visits. By clicking “Accept”, you agree to the use of all cookies. You can also select “Cookie Settings” to adjust your preferences and provide more specific consent. Cookie Policy