Load Testing
Need to complete information management load testing and want practical suggestions to ensure rapid project delivery?
What is performance testing?
The objective of information management performance testing
is to ensure that the solution meets service level agreements.
What is the scope of performance testing?
Information management load testing will include the
following tests:
- Data performance testing;
- Data base optimization testing and tuning; and
- Query performance testing.
Where does the test data
come from?
Obtaining comprehensive test data is an ongoing challenge.
Frequently, data warehouse applications involve changing data
structures on source applications. This means that it is not always
possible to rely on using production data as a complete source of test
data.
Suppose that a source system is being modified to provide new feeds to
the data warehouse. This usually means that:
- The source system production support team (or project
team) are under time constraints and the best they can provide is
limited test data in a test environment;
- This test data may be based on specifications
provided by a third party and there is a possibility that the
specifications are wrong;
- This test data is created early in the project life
life cycle and there is a possibility that requirements have changed
since the data was created; and
- There may be limited knowledge on the source system
team due to resource constraints and documentation may be out-dated.
Testing considerations
Create a test data acquisition plan
early in the project.
Review the test data acquisition plan
with all stakeholders and secure consensus.
Consider dedicating some ETL
developers to the test data acquisition process.
Do not plan to start performance testing
until all low volume testing is complete e.g.
- Unit testing;
- System testing;
- Integration testing; and
- Quality assurance testing.
Ensure
that all code defects are resolved before starting testing.
This will minimize performance testing defects and optimize resource
utilization.
Plan
lots of time for testing (I have seen some tests run for
several days only to quit unexpectedly). It's difficult to recoup this
time.
Plan lots of checkpoint back-ups so
that a very lengthy run does not have to be restarted at the beginning
in event of issues.
Plan adequate online storage capacity
to reduce time required to make tape back-ups or restore from tape.
Ensure that the integration/performance test
environment and data base settings are identical to production.
Do
not assume the environments are identical--Sometimes minor difference
is database parameters can have a significant performance impact.
Plan on having key stakeholders
available when processing performance tests e.g.
- Data architect;
- Senior ETL designer;
- Database administrator;
- ETL developers; and
- Production support staff.
Who is involved with
performance testing?
Performance testing is a highly technical cycle that involves testing and
tuning. Changes could be required to:
- Database structures or indexes;
- Data movement (ETL) software; and
- Business intelligence query software.
It is imperative that all appropriate team members be available and
on-call during performance testing.
Summary...
The objective of information management load testing is to
ensure that the solution meets service level agreements.
This is a highly technical cycle that careful planning and attention to
details such as test data acquisition.
Expect, and plan for,
delays
|