You are on page 1of 6

Question 1. What Is Performance Testing?

Answer :

Performance Testing is performed to determine response time of the some components


of the system perform under a particular workload. It is generally measured in
terms of response time for the user activity. It is designed to test the overall
performance of the system at high load and stress condition It identifies the
drawback of the architectural design which helps to tune the application.

It includes the following:

Increasing number of users interacting with the system.


Determine the Response time.
Repeating the load consistently.
Monitoring the system components under controlled load.
Providing robust analysis and reporting engines.

Question 2. What Is Concurrent User Hits In Load Testing?

Answer :

When the multiple users, without any time difference, hits on a same event of the
application under the load test is called a concurrent user hit. The concurrency
point is added so that multiple Virtual User can work on a single event of the
application. By adding concurrency point, the virtual users will wait for the other
Virtual users which are running the scripts, if they reach early. When all the
users reached to the concurrency point, only then they start hitting the requests.

Question 3. What Is The Life-cycle Of Testing?

Answer :

Planning the Test


Developing the Test
Execution of the Test
Analysis of Results

Question 4. List Out Some Common Performance Bottlenecks?

Answer :

Some common performance bottlenecks include:

CPU Utilization
Memory Utilization
Networking Utilization
S limitation
Disk Usage

Question 5. What Drawbacks Do Manual Load Tests Have?

Answer :

The manual load testing drawbacks are:

It is very expensive to do Manual Testing, as real users charge by the hour.


With manual load testing, load testing for longer durations like for 7 days
won’t be possible, as users really work a maximum of eight hours daily.
You will not get accuracy for results correlation as there are delays between
actions of users.
It is hard to do results collection as the results capture each other.
It is hard to do.

Question 6. What Is The Difference Between Baseline And Benchmark Testing?

Answer :

The differences between baseline and benchmark testing are:

Baseline testing is the process of running a set of tests to capture performance


information. This information can be used as a point of reference when in future
changes are made to the application where as Benchmarking is the process of
comparing your system performance against an industry standard that is given by
some other organization.

Example: We can run baseline test of an application, collect and analyze results,
and then modify several indexes on a SQL Server database and run the same test
again, using the previous results to determine whether or not the new results were
better, worse, or about the same.

Question 7. What Is The Difference Between Performance Testing And Performance


Engineering?

Answer :

Performance testing:

In Performance testing, testing cycle includes requirement gathering, scripting,


execution, result sharing and report generation.

Performance engineering:

Performance Engineering is a step ahead of Performance testing where after


execution; results are analyzed with the aim to find the performance bottlenecks
and the solution is provided to resolve the identified issues.

Question 8. What Are The Automated Performance Testing Phases?

Answer :

The phases involved in automated performance testing are:

Planning/Design: This is the primary phase where team will be gathering the
requirements of the performance testing. Requirements can be Business, Technical,
System and Team requirements.

Build: This phase consists of automating the requirements collected during the
design phase.

Execution: it is done in multiple phases. It consists of various types of testing


like baseline, benchmarking testing.

Analyzing and tuning: During the performance testing we will be capturing all the
details related to the system like Response time and System Resources for
identifying the major bottlenecks of the system. After the bottlenecks are
identified we have to tune the system to improve the overall performance.

Question 9. What Is Distributed Load Testing?

Answer :

Distributed load testing: in this we test the application for a number of users
accessing the application at a same time. In distributed load testing test cases
are execute to determine the application behavior. Now application behavior is
monitored, recorded and analyzed when multiple users concurrently use the system.
Distributed load testing is the process using which multiple systems can be used
for simulating load of large number of users. The reason for doing the distributed
load testing is that to overcome the limitation single system to generate large
number of threads.

Question 10. What Is Profiling?

Answer :

Profiling is a process of pinpointing a bottleneck performance at minute levels.


This is done by performance teams for engineering which includes developers or
performance testers. You can profile in any application layer getting tested. If
you need to do application profiling you might need to use tools for performance
profiling of application servers. When profiling an application server, you
identify issues at the level of code such as memory intensive API’s If the database
is what you are profiling using the tools for database profiling, you can identify
a number of things such as a full table scan query, high cost queries and the
number of executed SQLs.

Question 11. List Down Any Challenge You Faced In Your Performance Career And How
Did You Overcome It?

Answer :

Yes, I faced many challenges like defining the scope of application, break points
which I over came by studying the historical data of application and based on them
I decided the values, setting up the performance environment including proxy
bypassing, connecting to Server under test.

Question 12. What Is Ip Spoofing And Why Is It Used?

Answer :

IP spoofing is used to spoof the system so that each host machine can use many
different IPs to create hypothetical environment where system believes that request
are coming from different locations.

Question 13. How Do You Identify Which Protocol To Use For Any Application?

Answer :

Previously Performance tester had to depend much on the development team to know
about the protocol that application is using to interact with the server.
Sometimes, it also used to be speculative.

However, LoadRunner provides a great help in form of Protocol Advisor from version
9.5 onwards. Protocol advisor detects the protocols that application uses and
suggest us the possible protocols in which script can be created to simulate the
real user.
Question 14. How Do You Do The Analysis Of The System For Identifying Issues?

Answer :

We can study the various graphs generated by the tool such as Response time,
throughput graph, running Vusers graph etc. and also we can see the server logs to
identify the issues in system.

Question 15. What Is Performance Engineering, How Its Different Form Performance
Testing?

Answer :

Performance testing is the process where we identify the issues in the system.
Performance engineering is the process where we address the issues and rectify
them.

Question 16. How You Can Calculate Pacing For Your Application?

Answer :

We can calculate pacing by the formula as

No. of users = (Response Time in seconds + Pacing in seconds) * TPS

TPS is transaction per Second.

Question 17. How Do You Find Out The Performance Bottlenecks?

Answer :

Performance Bottlenecks can be identified by using different counters such as


response time, throughput, hits/sec, network delay graph. We can analyze them and
tell where the suspected performance bottleneck is.

Question 18. What Is Think Time?

Answer :

Think time can be defined as the real time wait between 2 consecutive transactions.
For Example a real time user waits to evaluate the data he received before
performing the next step, that wait time he takes can be stated as think time.

Question 19. Can You Tell A Scenario Where Throughput Is Increasing With Response
Time Means When They Are Directly Proportional?

Answer :

Yes it can be possible when you have lots of CSS (Cascading Style Sheet) in your
application which takes a lot of time to display. We can expect this type of
situation where throughput will be increasing as well as the response time.

Question 20. What Is The Reason Behind Performing Automated Load Testing?

Answer :

Difficult to measure the performance of the application accurately.


Difficult to do synchronization between the users.
Number of real time users are required to involve in Performance Testing.
Difficult to analyze and identify the results & bottlenecks.
Increases the infrastructure cost.

Question 21. What Is Performance Tuning?

Answer :

To improve the system performance we follow a mechanism, known as Performance


tuning.

To improve the systems performance there are two types of tuning performed:

Hardware tuning: Optimizing, adding or replacing the hardware components of the


system and changes in the infrastructure level to improve the systems performance
is called hardware tuning.
Software tuning: Identifying the software level bottlenecks by profiling the
code, database etc. Fine tuning or modifying the software to fix the bottlenecks is
called software tuning.

Question 22. What Is A Protocol And How Many You Have Worked On?

Answer :

A protocol is a set of rules for information communication between 2 or more


systems. There are many protocols such as Http/Https, FTP, Web Services,
Citrix.Mostly used protocols are Http/Https and Web Services.

Question 23. What Is Difference Between Simultaneous User And Concurrent User?

Answer :

Simultaneous users wait for other user to complete then it starts its activity
whereas in concurrent users, it can be like 2 users log into the system and perform
different activities at the same time.

Question 24. What Is Performance Tuning? How Many Types Are There?

Answer :

Performance tuning is done for improving the system performance:

Hardware Tuning: Optimizing, adding or replacing hardware components of the system


and changes done in the infrastructure level to improve system performance is
called hardware tuning.

Software Tuning: Identifying the software level bottlenecks by profiling the code,
database etc. Fine tuning or modifying the software to fix the bottlenecks is
called software tuning.

Question 25. What Activities Are Performed During Performance Testing Of Any
Application?

Answer :

Following activities are performed during testing of application:

Create user scenarios


User Distribution
Scripting
Dry run of the application
Running load test and analyzing the result

Question 26. Explain The Sub-genres Of Performance Testing?

Answer :

Following are the sub-genres of Performance Testing:

Load Testing: it is conducted to examine the performance of application for a


specific expected load. Load can be increased by increasing the number of user
performing a specific task on the application in a specific time period.
Stress Testing: is conducted to evaluate a system performance by increasing the
number of user more than the limits of its specified requirements. It is performed
to understand at which level application crash.
Volume Testing: test an application in order to determine how much amount of
data it can handle efficiently and effectively.
Spike Testing: what changes happens on the application when suddenly large
number of user increased or decreased.
Soak Testing: is performed to understand the application behavior when we apply
load for a long period of time what happens on the stability and response time of
application.

Question 27. Mention What Is The Difference Between Performance Testing And
Functional Testing?

Answer :

Functional Testing

To verify the accuracy of the software with definite inputs against expected
output, fuctional testing is done
This testing can be done manually or automated
One user performs all the operations
Customer, Tester and Development involvement is required
Production sized test environment is not necessary, and H/W requirements are
minimal.

Performance Testing

To validate the behavior of the system at various load conditions performance


testing is done.
It gives the best result if automated
Several user performs desired operations
Customer, Tester, Developer, DBA and N/W management team
Requires close to production test environment and several H/W facilities to
populate the load.

You might also like