Creating an organized test plan has become extremely important for software companies because of the hyper competitive software industry. The time, capabilities, bandwidth and other resources are limited, so it is critical to make sure that testing professionals are extremely comprehensive while executing their test scripts. However, in tough economic times like today, having a solid test plan is not enough; a more dynamic approach is required to cut costs by eliminating unwanted tests without compromising on a comprehensive risk and security testing. To ensure this “Just Enough” approach to testing, test management becomes critical. Test Management involves leveraging a collection of processes and tools that enables testers to take a more strategic approach to testing, prioritizing key test functions, accounting for risk, planning for coverage, and controlling test execution. By employing effective test management, software development companies will ensure that they run the right tests, and avoid releasing an application that is not ready for prime time.
Test Management – Planning & Strategy
Test planning is a vital step in every test project. In this plan the results of the test project preparations are explained and documented. This is supplemented with subjects such as assumptions & preconditions specific to a project. Test Plan is therefore an important management and communication tool for the test manager and testers. It is very suitable for the use in communication with the clients and the stakeholders, and also communications within the teams.
As per one of its definitions:
“A Document describing the scope, approach, resources, and schedule of intended testing activities. It identifies test items, the features to be tested, the testing tasks, who will accomplish these tasks and any risks which require contingency planning.”
Thus the test plan mainly specifies about:
- The scope of what does and what does not fall within the test project,
- The testing approach,
- The resources and equipment required for the test project and,
- The risk analysis of the Project.
The Test Plan must fit within the total project plan, which provides the description of all parts of the project, from writing the business case through system development and testing to the moment when the Information systems go live.
The test strategy should specify which a test cases needs to be tested, in what order and by which all stakeholders. The various types of testing activities which need to be conducted are:
- Expert Screening
- Preliminary screening of Unit Tests
- Screening of Critical Interfaces in Sandbox
- Authorization Screening
- Supplementary Interface Screening in Test Environment
- User Acceptance Screening
Also there can be various subheads under which the formal testing can be classified:
- Unit Testing
- Integration Testing
- Authorization Testing
- Vocabulary Testing
- Re-test of ADM changes
- Additional Unit test scope
- Additional Integration test scope
The lists provided above are indicative and not comprehensive. There can be additions or deletions to these list based on the nature of testing projects.
Roles & Responsibilities of the Test Management Team
The test management teams:
- Plans, schedules and monitors preparation and execution phase of testing
- Establishes monitoring & communication rules during testing
- Establishes and performs deviation handling in conjunction with Review Board and Test management from other sites testing concurrently
- Defines and prepares test cycles
- Daily, Weekly and Milestone reporting to Project Management & Integration Management
- Updates Test Overview Lists with test results.
- Reviews and approves test results
- Ensures appropriate approval & filing of test results in Document management systems.
- Approves Change Requests etc.
Real-Time updates that can be accessed from a centralized repository
Test Management teams should not be spending countless hours in the morning trying to gather and compile the data from multiple sources and send you a report. Every member of your should be able to access all relevant test case information from anywhere in the world and be sure that it is current and updated, allowing your QA Team to be on the same page.
Test execution progress, test cases, requirements, and defect tracking charts should be all at the tips of your fingers. Testers should spend less time answering questions such as what percentage of tests are completed, where are we in the testing cycle, and how many critical bugs are there and more time on doing what they do best, that is ‘testing’!
Managing requirements and respective changes is at the core of successful testing effort. A test management team should provide an extensive capability to manage requirements and link them to test cases as well as defects for traceability analysis. By defining requirements, you can plan and manage tests that are more focused on your specific business needs.
Requirements should be associated to tests and defects to provide complete traceability and to aid the decision-making process.
Managing Test Plans
A test management teams should provide an interface to create a test plan template that uses a step-by-step process to make it simple and user friendly. The pre-defined stages of a test plan allow simple input giving you a comprehensive and complete test plan in a matter of minutes. The Test Plans will help you capture important test planning related information about testing your project. You should be able to import test plan into any word processor of your choice and should be version controlled allowing you to track changes globally.
Managing Test Cases
Test cases are the fundamental building blocks for a seamless and predictable testing effort. An effective test management tool should provide a very simple yet intuitive interface to write the details of test cases and link them to the requirements and associated defects. Also, it should be able to adopt a customizable workflow to enable various compliance criteria.
Learnings & Best Practices
There are various learnings and take aways that one tends to derive out of a successfully managed test project. These can be reused as artifacts for other testing projects so, that the risks in a testing project can be minimized. These are:
Usage of Tried and Tested Reporting Techniques: One should always use the best available tools for reporting and reviewing of tests. Microsoft SharePoint is one such tool which can effectively do this job.
This tends to save a great deal of time and effort, which will otherwise be wasted in tracking of test progress and other such related activities.
Complete Preparedness of Test Overview Lists: Test overview lists define the complete scope of testing activities and their readiness before the start of Testing activities is of paramount Importance. This should completely and comprehensively outline which tests need to be performed, the nature of these tests, where will the test execution take place, who will perform these tests, in what way the result recording will take place, who will record these results etc.
Timely Availability of Test Cases/Test Scripts: As explained earlier that Test Scripts are the fundamental building blocks of a test project their readiness plays an important role in the successful execution of a test project. The effort should be made to ensure that the test scripts which are to be used or testing are realistic in terms of actual business scenarios which currently exist for which testing is to be carried out.
Availability of Subject Matter Experts: There is always a possibility of the testers not being completely aware of the business processes being tested, the timely availability business SMEs is required so that, extra effort need not be wasted by testers in grappling with the business processes.