
Explore JMeter basics and performance testing concepts, including test plans, thread groups, samplers, assertions, listeners, and distributed testing, with a hands-on look at GUI and non-GUI modes and installation.
Install and configure Apache JMeter, set JAVA_HOME and PATH, launch jmeter.bat, and explore the basic test plan with a thread group and HTTP request sampler for a sample JPEG store.
Fix http request by putting main URL in server name and rest in path, then record a shopping flow with Bad Boy and export to jmeter with cookie, variables, header managers.
Add simple controllers for landing, categories, items, and cart pages; copy HTTP requests, add an assertion on categories for salt water and fresh water, and use a CSV data set.
Learn JMeter parameterization with CSV files, using the cat variable and ${cat}, and analyze results via view results tree, graph results, and save responses to files for throughput and correlation.
Explore how to implement correlation in JMeter by passing dynamic values between requests using a post-processor regular expression extractor, save response to file, and manage dependencies from CSV-driven categories.
Explore correlation as dynamic parameterization in JMeter, using a regular expression post-processor to extract product ID and feed it into the next request.
Configure http request defaults to centralize the server name and port, then use correlation to handle dynamic values and improve performance testing results.
Explore JMeter features for rest and api performance testing. Utilize sample web services, test plans, and samplers like http and soap xml-rpc to build robust performance tests.
Master api testing with JMeter by configuring rest http and soap xml-rpc requests. Add parameters and app id, and use view results in tree to validate responses.
Configure JMeter to send soap action requests to a free soap web service, using soap xml-rpc, the get cities by country endpoint, and a basic thread group to analyze results.
Learn to master API performance testing with random data in JMeter by using a random variable and per-thread city IDs from a city list, validating 200 responses.
Master JMeter's function helper dialog to generate a random function for an HTTP request, and save hostname and date-time to a CSV via the view results tree.
Discover how functions and variables power JMeter tests, with syntax examples, camel case conventions, and practical steps to implement them in a test plan with thread groups and HTTP requests.
Learn how to use functions and variables in JMeter, including log, time, and sum operations, with thread name handling and proper dollar-brace syntax to mix results for reliable testing.
Understand JMeter non GUI mode to perform load tests without the UI, by removing listeners and using a single results file. Execute tests via the command line with minus n, minus t, and minus l.
Run non gui mode tests in JMeter, verify the setup, execute, and confirm http 200 results and passed tests. The approach reduces resource use and enables integration with Jenkins.
Learn to test ftp services with JMeter using the ftp sampler to perform get and put transfers, validating local and server files and analyzing response data.
Use the ftp put function in JMeter to upload a file to the server, save in pub/incoming, and verify a 200 response. Compare put with get to avoid resource usage.
Learn to build a database test plan in jmeter using a free database, configure jdbc with testdb, add a MySQL connector jar, and verify results with listeners.
Add a response assertion to a JDBC request in a database test plan, verify results with JMeter variables, then run a positive test and view assertion results with the listener.
Learn to install and manage the JMeter plugin manager, including downloading, upgrading, and removing plugins, then use Blazemeter’s step-by-step debugger to trace script execution.
Explore how a Jmeter properties file configures behavior, including the xml parser sax2 specs, remote hosts for distributed testing, and search paths, user.classpath, and system properties.
Learn how a dummy sampler debugs tests by validating a random variable inside a test plan, with thread groups, request and response data, and response assertions using plugin manager.
Generate html reports from the command line using JMeter, running a test with 20 threads and a csv result, then view Apdex, latency, throughput, and error details.
Generate HTML reports from a standalone CSV using the command line with JMeter -g test result dot csv, ensuring the reports folder is empty to produce the dashboard.
Learn how HTTP cache headers control resource caching, including cache-control, max-age, and expires. Explore last-modified and e-tag for conditional requests and how private caching affects proxies.
Explore the loop controller in JMeter and learn to run a single HTTP request multiple times while other requests run once, by setting loop count and configuring a thread group.
Explore how the transaction controller groups requests to report total time, switch between parent and child samples, and include timer and pre/post processor durations for accurate results.
Create and manage JMeter thread groups to run tests for specific durations, schedule execution, and execute tests sequentially or in parallel while adding websites and analyzing results.
Pace tests in JMeter with the stepping thread group plugin to control users, delays, and ramping. Build a plan with HTTP requests and an aggregate report to analyze performance metrics.
Explore the HTTP cache manager in JMeter, configure clear cache per iteration, observe first request from server and subsequent requests from cache, and note 304 not modified responses across versions.
Learn how to use ajax with jmeter to test asynchronous JavaScript and xml communication via xml http requests, including json, xml, html, and text formats.
Record ajax interactions with blazemeter, export to jmeter as a jmx file, and run tests with http header manager and zsf token handling to fix 400 errors using regex.
Learn to integrate Jenkins and JMeter by setting up Jenkins, installing the Performance API plugin, starting Jenkins, and creating a freestyle project with a Windows batch command build step.
Configure Jenkins with JMeter performance plugin, restart after plugin placement, adjust user.properties for XML, run JMeter in batch mode via a freestyle project, and publish performance reports with trend data.
Learn to use Java in JMeter by building a Java project in Eclipse, exporting a jar, and loading it into JMeter with a beanshell sampler.
Import a Java demo jar, create an object, invoke its sum method with 10 and 20, and print the result to the console in JMeter.
Define a beanshell variable and set a URL at test plan level, then run a JMeter test with a beanshell sampler that prints URL using system.out.println from user defined variable.
Create a custom log in JMeter with beanshell scripting by configuring a random variable, thread group, and dummy sampler, then write to a CSV using file writer and buffered writer.
Learn how to create a custom log in JMeter using line.separator, generate a CSV in the bin directory, and capture random variable values, beanshell post-processor outputs, and thread context.
Learn how to install and configure the Flexible File Writer plugin for JMeter, create random variables, and generate tab- or pipe-delimited test results (tsv vs csv) for analysis.
Generate custom graphs in JMeter using plugins to deliver production-ready reports. Learn to install plugins and view graphs like active threads over time and response times over time.
Parameterize the JMeter test plan and override ramp up period and loop count with a batch file to run batch tests from the DOS prompt, producing CSV results.
Learn to integrate JMeter with Maven to automate performance tests, configuring a pom.xml with the JMeter Maven plugin, setting up project structure, and running tests via mvn install.
Learn how to install and use the graph generator listener in JMeter by adding the graph generator and cmd runner jars. Wire a csv test result and generate png reports.
Explore how the graph generator listener produces time versus threads graphs, exports csv results, and prefixes graphs to distinguish releases, while configuring thread groups, filtering, and non-gui test runs.
Generate standalone graphs from jmeter csv results using the graaf generator listener, and view results with the graph results listener and the view results tree via a gtl batch file.
Configure the SMTP sampler in JMeter to send emails via smtp.gmail.com on port 587 with start TLS, using the Java Mail API jar, and assess SMTP server performance.
Use JMeter's mail reader sampler to read emails via imap from Gmail, configure inbox retrieval with start tls, and verify content with two retrieved messages and a 200 response.
Explore how the synchronizing timer blocks threads until all targeted threads reach a rendezvous point, then releases them together for serial request execution with two HTTP requests.
Learn to obtain real-time results in JMeter non-GUI runs with the summariser and console status logger. Configure properties, enable summariser, and run batch tests for live summaries and console output.
Explore XPath fundamentals as a W3C standard for navigating HTML and XML, and learn XPath extraction and XPath assertion in JMeter with practical path examples.
Learn to customize XPath to reduce maintenance-heavy, long absolute paths by using relative XPath with double slashes and attributes like id, name, and href, aided by Firebug and Fire Path.
Explore how to build customized XPath expressions to locate web elements using id, name, class, and href, applying contains and text with starts-with to ensure a single matching node.
Explore how the XPath extractor in JMeter retrieves dynamic and static values from HTML forms. Learn to configure the post processor and capture extracted variables with a debug view.
Explore how XPath assertion finds elements on large web pages and verifies their values, such as ensuring the title equals Google in a sample test plan.
Learn to extract latitude and longitude from addresses using Google geocoding in JMeter with Market.com's geocode API, including API keys, JSON output, and spaces encoding.
Configure the http header manager with the X mashup key and accept header, drive tests with address.csv via csv data set config, and extract lat/long via geocode API producing JSON.
Master JSON extraction and setup teardown threads in JMeter to extract geocode coordinates, and compute distances via a distance API with proper headers and parameters.
Explore setup and teardown thread groups in JMeter, learn how setup runs before and teardown after the main test, and examine a sample test plan with a summary report.
Learn how the if controller governs which test elements run by evaluating a condition, either once on entry or for every child, using variable expressions instead of JavaScript.
Learn how to implement an if controller in JMeter, filter test data with a CSV data config, and conditionally run login tests for multiple users while excluding specific entries.
Install and run an Apache ActiveMQ broker to support JMeter publisher and point-to-point samplers. Download the 5.14.1 Windows distribution, extract, and verify access at localhost:8161 with admin/admin.
Build a JMS point-to-point test plan in JMeter using an ActiveMQ queue, with a single producer and one receiver, for request-response messaging.
Master the JMS publish-subscribe model, including decoupled publishers and subscribers, and test it in JMeter with publisher and subscriber samplers using ActiveMQ.
Explore the JUnit sampler in JMeter, learn to run JUnit tests from jar files, and configure a Selenium WebDriver test with ChromeDriver and JUnit annotations.
Learn to run JUnit requests in JMeter with WebDriver and ChromeDriver, launching multiple browser instances, validating page titles, and understanding JUnit sampler settings for performance testing.
Explore headless browser testing with the HtmlUnit driver in JMeter, replacing the Chrome driver to run tests without opening browsers, using the DOM for verification.
Learn how to use JMeter's Web Driver Sampler to run browser-based tests by importing the sampler, configuring Chrome or Firefox drivers, and executing Java scripts with the WDS class.
The critical section controller synchronizes execution so that its child samplers run by one thread at a time by taking a named lock, such as global underscore lock.
Configure and run master-slave execution in JMeter by updating user.properties and jmeter.properties, setting remote hosts, and running non-gui tests with a stepping thread group.
Master slave mode execution in JMeter runs tests on a remote host, prints results to a JDL file, and guides pulling reports with stepping thread groups and graph listeners.
Master modular and reusable JMeter scripts by using module controller and include controller, automating login and navigation across shopping app sections such as login, orders, products, and promotions.
Learn to design Blazemeter tests for JMeter using test fragments and module controllers to reuse login and authentication steps across two thread groups, and review results with view results tree.
Select the correct test fragment in the module controller, verify with find target element, then clear results, run, and plan to add the login test as a separate module.
Use an include controller with a login fragment to run the login test once, then execute other tests under a simple controller, referencing the fragment.
Explore the throughput controller in JMeter, compare percent execution and total executions, and see how per user distribution automates load across home, about, and archives pages, via the aggregate report.
Explore how the JMeter runtime controller governs how long its children run, with hands-on demonstrations of setting a runtime in seconds and observing slight deviations due to startup and cleanup.
Compare the random order controller with the simple controller, showing how random order executes http requests with orders while the simple controller runs in a fixed top to bottom order.
Explore the JMeter switch controller, which selects a subordinate element by index or name and falls back to the zeroth element when the value is out of range or empty.
Discover how single page applications operate and test them in JMeter using the HTTP test script recorder, proxy setup, and client-side interactions.
Explore JMeter as a performance testing tool, covering test plans, controllers and listeners, thread groups, requests, data, and parameters, to enable load, stress and volume testing across applications and users.
Explore the basics of Apache JMeter and its role in performance testing, including its open-source, Java-based platform for testing web applications under load, with test plans, thread groups, and listeners.
Install JMeter by downloading the Apache JMeter binary 5.5 zip, verify Java is installed with java -version, extract the zip, and run the Windows batch file to launch the GUI.
Write and run a simple JMeter test case from a test plan, configure defaults, add user variables, and explore threads, configuration elements, listeners, timers, preprocessors, post processors, and assertions.
Learn how a test plan combines threads, preprocessors, post-processors, controllers, and listeners to visualize performance testing in jmeter. Explore configurations, assertions, reports, and the test plan basics.
Learn to configure a thread group in JMeter, setting target load, rate per hour, random arrivals, pauses, and actions after sampler errors, plus ramp-up, loop count, and setup teardown.
Explore JMeter controllers, including samplers and logic controllers, to manage HTTP requests, flow actions, and thread execution with ramp-up and loop counts through debug and JSR223 samplers.
Explore JMeter listeners to view performance outputs through summary and aggregate reports, graphs, and trees. Learn to analyze latency, throughput, errors, and test case details with various listeners.
Explore how JMeter enables performance testing across multiple applications and users. Learn about test plans, controllers and listeners, thread groups, parameters, and load, stress, and volume testing.
Introduction
Apache JMeter is a powerful tool for performance and load testing of web applications, APIs, and databases. This course is designed to guide learners from the fundamentals of JMeter to advanced testing techniques, covering everything from installation and basic operations to complex scripting, customizations, and integration with CI/CD pipelines. By the end of the course, you will be equipped to handle performance testing challenges with confidence and expertise.
Section 1: JMeter 01 - Beginners
This section lays the foundation for JMeter, introducing its installation and core features. You'll learn about HTTP requests, simple controllers, and viewing result trees. Key topics include parameterization, correlation, API testing, and handling random data. By the end of this section, you'll be comfortable creating basic test plans and understanding the essential components of JMeter.
Section 2: JMeter 02 - Intermediate
Here, you'll delve deeper into JMeter’s intermediate features. Learn to create HTML reports, manage cookies and caches, and use advanced controllers like loop and transaction controllers. This section covers integrating JMeter with Jenkins, writing custom logs, generating graphs, and leveraging Maven for project management. With hands-on examples, you'll gain the skills to execute more complex performance testing scenarios.
Section 3: JMeter 03 - Advanced
This section focuses on advanced JMeter capabilities, including X-Path extractors, JSON extractions, and setting up teardown threads. You'll explore JMS models, modular scripting, throughput controllers, and master-slave execution modes. The section also covers using JMeter with Single Page Applications and creating reusable scripts, ensuring you can handle sophisticated testing needs.
Section 4: JMeter Course Overview and Wrap-Up
The final section revisits the course's core concepts, reinforcing foundational knowledge and tying together advanced practices. Topics like thread groups, listeners, controllers, and functions in JMeter are reviewed. The course concludes with guidance on building robust test plans and applying JMeter effectively in various scenarios.
Conclusion
This course empowers you to utilize Apache JMeter for end-to-end performance and load testing. From simple tests to complex, real-world scenarios, you’ll gain the confidence to optimize application performance and ensure system reliability under load.