JMeter Interview Questions

In this post we'll see some JMeter interview questions. I will continue adding more question to this post as and when I will come across new ones.

Ques. What is distributed load testing? How can it be achieved in JMeter?

Ans. Distributed load testing is the process using which multiple systems can be used for simulating load of large number of users. The reason of using more than one system for load testing is the limitation of single system to generate large number of threads (users). In JMeter we can do distributed load testing using the master slave configuration. [For complete steps to perform distributed load testing refer to the post- Distributed load testing in JMeter]

Ques. How can we reduce the resource requirement in JMeter?

Ans. To make the best out of the available resources and in general as a practice, following practices should be incoroprated in the tests-
  • Use non-GUI mode: jmeter -n -t test.jmx -l test.jtl
  • Use as few Listeners as possible; if using the -l flag as above they can all be deleted or disabled.
  • Don't use "View Results Tree" or "View Results in Table" listeners during the load test, use them only during scripting phase to debug your scripts.
  • Rather than using lots of similar samplers, use the same sampler in a loop, and use variables (CSV Data Set) to vary the sample. Or perhaps use the Access Log Sampler. [The Include Controller does not help here, as it adds all the test elements in the file to the test plan.]
  • Don't use functional mode
  • Use CSV output rather than XML
  • Only save the data that you need
  • Use as few Assertions as possible
[ source: http://jmeter.apache.org/usermanual/best-practices.html] 

Ques. What is Spike testing and how can we perform it in JMeter?

Ans. Suddenly spiking or increasing the number of users at certain point of application and then monitoring the behavior at that intervals is spike testing.
In JMeter spike testing can be achieved using Synchronizing Timer. Synchronizing timer blocks the threads until a particular number of threads have been blocked, and then release them at once thus creating large instantaneous load.

Ques. What all activities are performed during performance testing of any application?

Ans. Activities performed-
1. Create user scenarios
2. User Distribution
3. Scripting
4. Dry run of the application
5. Running a load test and analyzing the result

Ques. What is 90% line in JMeter?

Ans. The aggregate report listener have 90% line as one of the metric. The Apache JMeter manual describes 90% line as- "90% of the samples took no more than this time". It is actually the 90 percentile of the response times of the samples -
90 percentile = (90/100)*N+1/2 where N is the number of samples
So, if there are 10 samples then 90%line will be 9.5 or 9. It means the 9th value in the sorted list of samples (sorted according to ascending order of their response times) will be the 90%line value.

Ques. What is BlazeMeter?

Ans. BlazeMeter is a cloud based service compatible with Apache JMeter. It generates large amount of instant load and provide very comprehensive reporting and analysis features.
In Blazemeter we can just upload the JMeter script and run the load test on cloud with predefined number of users.

Ques. What is correlation?

Ans. Correlation is the most important aspect of scripting. It generally includes fetching dynamic data from preceding requests/calls and posting it to the subsequent requests. [For more details, refer to the post- Correlation in JMeter]

Ques. Explain parameterization in JMeter?

Ans. Parameterization is process of generalizing some user input, so as to use it for multiple users or executions. [For more details, refer to the post- Parameterization in JMeter]
- See more at: http://artoftesting.com/interviewSection/interview.html#sthash.jLkIScl5.dpuf