0% found this document useful (0 votes)
4 views

Performance Testing Explained

Uploaded by

jaguar45455
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Performance Testing Explained

Uploaded by

jaguar45455
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 46

Performance Testing explained

What is Performance testing


• Many people perceive performance as a single aspect of the system, it is
their key focus, response time. As we’ll see in the course this is an over
simplified view of performance, but it is the most common view.
• Ross Collard defines performance as follows: A system’s performance is its
speed or responsiveness, its ability to handle loads and its efficient use of
resources.
• To accurately measure the “performance” of a system we need to know
what we are trying to measure and what indicates there is a problem. To
ensure our measures have meaning we need to have an accurate load
(operational profile or workload) running on the system. We cannot just
run random events at an application/system and call it a load or
performance test.
Functional VS. performance testing
• Functional testing is about designing test cases (scripted or creative) to
ensure that the software meets the needs, expectations and requirements
of the customer/client
• performance testing does not utilize test cases as we typically see them.
There are performance requirements/targets (or rather there should be)
that we design load tests to evaluate.
• A performance test utilizes a load-based test to evaluate whether or not an
application/system meets specified performance targets (response times,
resource utilization, etc.) under defined levels of activity (load/volume).
• Each time a load test is executed (no changes having been made to the
system/application) the results will be similar to a previous execution.
• The results will not be identical as in functional testing but will be similar; if
the results are identical, there is something fundamentally wrong with the
load test in use.
Predicting performance outcome
• Providing precise predictions about a production
application/systems performance without ensuring these
elements are properly addressed, can be a critical mistake as
the production application/system may not behave at all as
predicted, depending on which factors were “inaccurate” and
the level and type of inaccuracy.
• In many circumstances the single result of a performance test
is a one- line statement “yes we can ship” or “no we cannot
ship”. If certain factors are not properly addressed in the
design of the test, the results can be very misleading.
• If it fails in a controlled lab, it most likely will fail in the real
world.
Performance Testing Process
• Test Planning
• Test Preparation
• The above is about 80-90 % of the total time
• Test Execution
• Test Reporting
• The above is about 10-20 % of the total time
Performance Testing is a Team Effort
• QA/Test
• DBA
• User / Customer
• Security
• Developers / Architect
• Management / Marketing
• Capacity planners / operations / product
managers.
• Load Examination Questions
• What circumstances are likely to cause heavy demand on the system?
• What uses of the system are likely to consume a high level of system resources per
event, regardless of frequency?
• What system uses are timing sensitive?
• What uses are most popular or frequently used?
• What uses are most conspicuous or highly visible?
• What activities are likely to happen concurrently, and cause heavy load and stress on
the systems?
• Are there any notably complex functions in the system?
• Are there any background applications sharing
• the same infrastructure will they interfere or
• compete significantly for system resources?
• What has been your prior experience with other similar situations?
• What features or system aspects typically have encountered performance problems?
Defining Key Measurements

• Now that we have or load information the


next step is to define the levels of resource
utilization and other measurements
• These measurements will be the basis for
determining if there is a problem in the
application/system
• Without defined measurements it is nearly
impossible to know when there is a problem
Defining the Acceptable Limits

• Once we have determined what our general


and specific measurements are and where to
gather the information from the next step is to
determine what the target levels are
• We need to define limits for acceptable and
unacceptable levels of resource consumption
• As we approach these limits and once the
limits reached we will begin to experience
performance related problems

You might also like