Jmeter Transaction Controller Example

Transaction Controller is one of the logic controllers of apache jmeter which is useful to measure over all time taken to perform complete transaction of any software web application's load testing scenario. Example : Total time taken to place online order on any eCommerce software web application. This includes all the requests which are required to place order from software web application. Transaction controller will add additional sample after nested samples to show total time taken by it's nested samples.

Let's understand it practically. I am performing load testing on my eCommerce software web application's place online order scenario and there are total 5 requests as bellow.
  1. Add To Basket
  2. Login
  3. View Basket
  4. Add Address
  5. Checkout
I want total time taken by all these 5 requests to complete the transaction. So i will add transaction controller in my jmeter test plan and then put all 5 requests under it as shown in bellow image.

jmeter Transaction Controller

Now add aggregate report in your jmeter test plan and run the test and view result in aggregate report when software load test execution completed. It will looks like bellow.

Transaction Controller in jmeter

You can see, aggregate report has additional request for transaction controller which shows total of all other requests.

Generate parent sample
Transaction controller has option "Generate parent sample" as shown in bellow image.

If you will select this checkbox option, transaction controller request will be generated as a parent of the other samples as shown in bellow image. 

Generate Parent Sample

Otherwise it will be generated as an independent sample.

Include duration of timer and pre-post processors in generated sample
If this checkbox is checked, It will include timer, pre- and post-processing time delays in the generated sample of transaction controller if you have used any of them in your test plan.

This way, You can use transaction controller in your software web application's test plan to get time of total transaction.

1 comment:

  1. Jmeter evokes requests serially , what if user we want to evoke the requests parally.