The type of performance test that you use depends on your
test objectives. Focus your test strategy on identifying the type
of performance test that can provide data to measure the objectives.
Procedure
- Run tests to record baseline measurements for your deployment. A baseline measurement test is a single user test that is run
over several iterations to identify whether an application is performing
well. You can use baseline measurement data for comparison purposes
in future tests.
- Identify which performance tests can provide data that
is related to your test objectives.
The type of tests
that you might use include the following performance tests:
- Benchmark under load test
- A type of baseline measurement that increases the load from a
single user to a percentage of your expected system load, such as
25%. This test indicates whether a system performance issue must be
fixed before further testing.
- Performance load tests
- A multipart test that measures the response times of transactions
during certain percentages of user loads. A typical performance load
test consists of five cycles, each of which increases the percentage
of the expected user load. For example, a performance load test can
have five cycles at the following user load intervals: 50%, 75%, 100%,
125%, and 150%. Performance load tests establish the performance curve
and identify whether the deployment can support service level agreements
under user load.
- Endurance tests
- Tests that are run over a period of hours or days to identify
memory leaks, performance issues over time, and overall system stability.
During endurance tests, you monitor key performance indicators, such
as transaction response times and the stability of memory usage.
- Sizing and capacity tests
- A series of tests that identifies the required size and total
capacity at each tier of the deployment. Tiers can include the individual Java™ virtual machines (JVM), the
total number of required JVMs, and the processor. You can use the
results of sizing and capacity tests to determine the required resources
for your deployment.
- Batch tests
- A test of components that does not require user interaction, such
as cron tasks or integrations with external systems.
- Identify the minimum number of tests that can produce the
data required to answer the test objectives. Consider the
time and resources that are available. A comprehensive and focused
test strategy can produce results in a cost effective manner.