Performance Testing Interview Questions and Answers
Performance Testing Interview Questions and Answers
com
9123820085
Performance
Testing Interview
Questions
kasper-analytics
kasperanalytics.com
9123820085
Contents
Performance Testing Interview Questions for Freshers
1. What do you understand by Performance Testing?
2. What are the types of Performance Testing?
3. What are some of the commonly available tools for performance testing?
4. What are some of the common performance bottlenecks and how do they
impact your application?
5. What is the need for conducting performance tests?
6. What are some of the common problems that occur due to poor
performance?
7. What do you understand by performance tuning?
8. How is performance testing different from performance engineering?
9. What are the steps involved in conducting performance testing?
10. What do you understand by distributed testing?
11. What is the metric that determines the data quantity sent to the client by
the server at a specified time? How is it useful?
12. What do you mean by profiling in performance testing?
13. What is load tuning?
14. What kind of testing deals with subjecting the application to a huge
amount of data?
15. What do you know about Scalability testing?
16. Why is JMeter used for?
17. How is performance testing different from functional testing?
kasper-analytics
kasperanalytics.com
9123820085
kasper-analytics
kasperanalytics.com
9123820085
In this article, we will be exploring the most commonly asked performance testing
interview questions for both freshers and experienced professionals.
kasper-analytics
kasperanalytics.com
9123820085
kasper-analytics
kasperanalytics.com
9123820085
3. What are some of the commonly available tools for performance testing?
There are so many tools available for accomplishing performance testing, GUI
testing, test management, load testing, functional testing etc. Among various
tools, the following are the most commonly used tools for performance testing:
kasper-analytics
kasperanalytics.com
9123820085
4. What are some of the common performance bottlenecks and how do they
impact your application?
kasper-analytics
kasperanalytics.com
9123820085
• Network bottlenecks: These occur when two or more devices lack the
necessary bandwidth to communicate with each other. Whenever there is
an overburdened server or overloaded network that causes the network to
lose its integrity. These issues can be resolved by upgrading servers,
network hardware like hubs, routers, access points etc.
• Software bottlenecks: These bottlenecks are due to the software where
programs are built for handling finite tasks so that it doesn’t utilize
additional RAM or CPU. This makes the program use only a single core or
processor despite the availability of resources. These can be resolved by
making the software program more efficient so that it can use available
resources efficiently.
• Disk Usage: The slowest component in a server is long-term storage units
like SSDs or HDDs that are unavoidable. The fastest long-term storage units
have physical limits which makes it difficult for the programmers to
troubleshoot such issues. These can be fixed by increasing RAM caching
rates, reducing fragmentation issues or by addressing insufficient
bandwidth by switching to faster storage units.
The key to fixing all the bottlenecks are by pinpointing the root cause of the
system degradation and then by fixing the code or by adding additional
hardware resources depending on the causes.
kasper-analytics
kasperanalytics.com
9123820085
6. What are some of the common problems that occur due to poor
performance?
kasper-analytics
kasperanalytics.com
9123820085
kasper-analytics
kasperanalytics.com
9123820085
Both of these terms are closely related yet distinct. Performance testing is a
subset of performance engineering that primarily deals with gauging the
performance of the application under varying loads.
kasper-analytics
kasperanalytics.com
9123820085
kasper-analytics
kasperanalytics.com
9123820085
Distributed testing is the process of testing applications when lots of users are
gaining access to the application from different devices simultaneously. This
helps to perform stress testing.
11. What is the metric that determines the data quantity sent to the client by the
server at a specified time? How is it useful?
Throughput is the metric that determines the data quantity sent to the client in
response to its request by the server. It is calculated in terms of requests per
second, hits per second, calls per day, etc. In most cases, it is calculated in bits
per second.
The value of throughput tells the slowness or fastness of the network and its
bandwidth capabilities. The higher the throughput, the higher is the network
capability.
kasper-analytics
kasperanalytics.com
9123820085
14. What kind of testing deals with subjecting the application to a huge amount
of data?
This kind of testing is known as volume testing. It deals with subjecting the
application to a huge amount of data to determine how much data the
application can handle when there are a good load of users accessing the
application concurrently. It verifies the performance of a system to test whether it
can handle a stipulated volume of data by entering huge data volume to the
application either incrementally or steadily.
Scalability testing is a type of performance testing that analyzes how well the
software is capable of handling complex operational capacity from a simple
capacity. Some software takes time to adapt to complex capacities. This testing
ensures that the application can scale quickly without any glitches or drawbacks.
JMeter is a Java-based tool for performing load testing. It helps in analyzing and
measuring the performance of web services with the use of plugins. The latest
JMeter version is 5.4.2 that requires a Java 8+ version to run.
kasper-analytics
kasperanalytics.com
9123820085
kasper-analytics
kasperanalytics.com
9123820085
18. What are the differences between benchmark testing and baseline testing?
Baseline Testing is a type of testing where the tester runs various tests to know the
information about the performance. Whenever a change is done in the future, the
result of the baseline testing will be considered as a reference point to the next set
of testing.
Correlation is performed for dynamic values such as session ids, session states,
date values etc that are returned from the server in response to any request.
kasper-analytics
kasperanalytics.com
9123820085
kasper-analytics
kasperanalytics.com
9123820085
23. What are the pre-requisites to enter and exit a performance test execution
phase?
kasper-analytics
kasperanalytics.com
9123820085
• Endurance testing deals with how long the application can endure and
perform well irrespective of the loads. Sometimes when an application is
used for a long time, it becomes slow or inactive which is why it becomes
important to conduct this testing. Endurance testing analyses all changes
in the application by simulating lengthy application usage. For example,
endurance testing is conducted on a Banking application where we test if it
can perform normally under continuous load or large transactions for a
long time.
• Spike testing deals with pushing the application to the limits by subjecting
the software to the highest operation level for identifying the strengths and
weaknesses of the application. Spike testing is necessary for instances
when eCommerce or shopping sites launch flash sales or holiday discount
deals where suddenly a large number of users will be accessing the
application. If the application crashes under sudden spike every time, then
it would result in a bad user experience and the users would lose faith in
the application.
26. What are the best ways for carrying out spike testing?
Spike testing can be carried out by bombarding the application with networking,
random connections, data, different operations, firing requests to every single
functionality of the application. In this way, the application is pushed to the limits
and monitoring can be done to identify if it can work under pressure. The data
monitored can be documented and then be analyzed.
Concurrent user hits scenarios arise when more than one user will be hitting or
requesting for the same event during the load testing process. This scenario is
tested to ensure that multiple users can access the same event requests at the
same time in the application.
kasper-analytics
kasperanalytics.com
9123820085
No, end-users cannot conduct performance testing. However, while making use of
the software the end-users can discover software bottlenecks. However, that
cannot be equated to actual performance testing performed by professional
testers. If the end-users want to participate in testing, they can be
accommodated in the User Acceptance Testing phase.
Metrics Description
Processor utilization Time spent by the processor to
execute non- idle threads.
Memory usage Amount of physical memory available
so that the server can process.
Disk time Time taken by the disk to execute
read/write request.
Bandwidth Represented in bits per second (bps)
used by network interfaces.
CPU interrupts per second Average number of hardware
interrupts received and processed by
the processor each second.
Response time Time taken to get the first character of
the response from the server to the
client.
Throughput Rate at which the server or network
receives requests per second.
Amount of connection pooling Number of user requests met by
pooled connections. The higher the
number, the better is the performance.
Maximum active sessions Maximum sessions which are active at
once.
Hits per second Number of hits every second
Thread Counts Number of threads running actively
kasper-analytics
kasperanalytics.com
9123820085
30. What are the common mistakes committed during performance testing?
Performance testing is done for measuring the performance of any action in the
application. We can run performance tests for checking the performance of the
websites and apps. In case we are following waterfall methodology, we can test
every time we release a new software’s version. If we are using agile
methodology, then we need to test continuously.
32. What are some of the best tips for conducting performance testing?
Following are some of the best tips for conducting performance testing:
kasper-analytics
kasperanalytics.com
9123820085
Conclusion
Performance testing provides in-depth insights regarding the non-functional
application requirements like scalability, speed, availability and reliability of the
software under test. These help in identifying and resolving the shortcomings and
gaps in performance before the application goes live.
kasper-analytics