Integration Testing
Need to complete information management
integration testing and want practical suggestions to ensure rapid
project delivery?
What is quality assurance
testing?
The
objectives of the quality assurance testing phase is to ensure that all
software components meet requirements and are ready to transition to
production.
What is a test plan?
A plan is a communications tool, which clearly sets testing expectations for all team members. The plan
should identify:
- Test
strategy;
- Test
plan;
- Test
data
strategy;
- Test
deliverables;
- Resource
plan;
- Training
considerations; and
- Test
schedule.
What is integration
testing or data warehouse testing?
Data warehouse testing (DWT) should focus on testing a set of
components to ensure
that it performs to specification. data warehouse testing should
include:
- System
and
volume tests to confirm that the system is
operating correctly and can handle the required data volumes e.g.
- end-to-end testing is essential to ensure that
logic flow works.
- Performance
testing
to
ensure that data can be loaded in the
available
“load window” e.g.
- Data loads into all environments;
- Load
manager
testing including any performance tuning and database optimization;
- Warehouse
manager testing including testing scheduling mechanism's e.g. Control
M, Autosys; and
- Infrastructure
and operations
component testing including backup and recovery.
Testing considerations
- Integration testing is a key component of data
warehouse applications;
- This will take time as sufficient data volumes are
required to ensure volume testing and it will take considerable
time for the loads to complete;
- Consider frequent checkpoints and data back-up's to
avoid having to restart the entire load process in the event of issues.
Integration testing checklist
Scope
DWT should focus on testing a set of
components to ensure
that it performs to specification
DWT should certify that the solution
meets specification.
Entrance Criteria
The following entrance criteria should be verified before DAT commences:
DWT should commence upon approval of
the integration Test Lead, Quality Assurance Test Lead and Data
Architect/Project Manager who shall ensure that data warehouse test
entrance
criteria have been met.
A configuration management process has
been established and documented to handle requested changes to project
documentation
The code migration process has been
documented and arrangements made to accommodate testing.
A turnover package has been prepared
and all code changes are identified in and made available
to the Requirements Manager and Test team. This includes database
changes, install
scripts and instructions, structure changes, etc.
Code to be tested is locked-down and
ready to be moved into the data warehouse test area.
All design documentation has been base
lined, is under configuration
control, and has been made available to the data warehouse testing team
for
review.
Independent code reviews &
review/checkpoints completed and documented.
Unit testing results have been
documented and reviewed by testing team.
Unit test defects have been fixed,
validated or otherwise properly finalized, and documented.
System testing results have been
documented and reviewed by the data warehouse test lead.
System test defects have been
fixed, validated or otherwise properly finalized, and documented.
A development team representative from
each subject area has been
identified and assigned to support the data warehouse testing effort.
All required support files (such as
account lists, flat file inputs,
ini files, etc.) have been documented in the data warehouse test object
migration plan.
The DWT defect management process has
been documented and implemented.
The DWT team has been trained in and
have appropriate access to the defect management tracking tool.
A Defect Manager has been identified,
allocated, and trained.
A test plan has been completed and
approved.
Test cases and scripts have been
completed and approved.
Test cases have been traced to the
architecture and design specification through a Requirements
Traceability
Matrix (RTM).
A unique DWT environment has been
reserved and under Configuration Management control.
The integration test environment has
been verified
as accessible and functioning including connectivity to all applicable
systems.
All applicable test tools have been
installed, verified as functional, and user guide/documentation
is up-to-date.
Proper user ids and permissions
required for testing have been obtained and verified.
Test Data has been received and
pre-tested for validity.
Any training required by the Test
Team has been completed.
Test Cases
The integration test lead should
create test cases.
The
Test Lead should ensure that test cases are recorded in the test
management tool e.g. Rational Test Manager or Test Director.
One or more test cases shall be
created for each component included in the release and shall specify:
- The steps needed to execute the test; and
- The expected results of the test.
Test Scripts
Repeatable test scripts should be
created by an assigned resource, stored in test management tool and
used by the Integration Tester.
Test scripts should be retained for
regression test purposes.
Test Execution
Testing
shall be performed in the DWT environment by senior technical resources
such as a data architect or senior data movement designer.
Test Data
Integration test data should be
created as
part of the test data acquisition plan.
Test data should be based on a
sub-set of production data.
Test data should be augmented as
appropriate to ensure adequate testing of all specifications.
Defect Management
Testing “defects” should be
identified, and recorded in
the defect management tracking tool, e.g ClearQuest.
Defects should be assigned to the
project manager who should:
- Determine impact on project deliverables;
- Approve/reject change; and
- Create and manage Change Requests as appropriate to
ensure that
requirements are changed, reviewed, and approved before commencing
technical analysis design, build, test and deploy.
Defects shall follow project
methodology e.g. analysis, design,
build, review/checkpoint process before defects are certified ready for
re-testing in the Test Environment.
Defect resolution should be monitored
by the Project Manager.
Test Results
Test results should be stored in
test management tool as an “attachment” to the test case.
Integration Test Exit
Criteria
DWT
shall be considered complete upon sign-off and approval of the Quality
Assurance Lead, Data Architect and Senior Data Movement Designer
and Project Manager who shall ensure that DWT exit criteria have
been
met.
Any updates to test documentation have
been completed and are under Configuration Management control.
All test cases have been executed
according to the test plan and any deviations documented and approved.
All required test types have been
completed.
All defects have received a final
disposition (i.e. open, closed, postponed, invalid, duplicate).
All closed defects have an assigned
defect root cause.
Sign-off has been obtained from
designated stakeholders indicating test completion.
Other test completion and validation
conditions, as specified in the Test Plan, have been met.
Summary...
Integration
testing should focus on testing a set of
components to ensure
that it performs to specification. This is a critical part of quality
assurance testing and test plans should ensure that adequate resources
and time are allocated.
|