5 Key Risks To Consider In Testing
Risks are inherent to any process. It is very important that the risks be thoroughly analysed and mitigation plans should be put in place. Early identification risks will enable effective mitigation plan. Some of the common risks involved in testing are :
Environment:
Availability of a stable test environment is key to conduct testing as planned. Often the environment may not be available due to various reasons. This should be taken in to consideration in test planning and strategy.
Mitigation
· Dependent Systems can be virtualised.
· Add enough contingency in planning
· Test the system in isolation
Test Data:
A strategy for test data should be defined along with test strategy. Unavailability of test data can make the tests unreliable.
Mitigation
· The database/environment can be snapshot and rolled back
· A database container can be created
· Database can be virtualised
· Test data can be created and destroyed by the test script.
Production Defects
Production issues are unavoidable. With a solid test strategy, the turnaround time can be drastically reduced.
Mitigation
· Prepare a reliable End-End test suite in Pre-Prod environment
· Automate PVT scenarios (to deploy hot fix)
· Test the code in feature toggles ( can be turned off if required)
· Have an efficient defect triage process
Security
Security is a serious risk , especially, for customer facing application and sensitive information. Breach in application security could have devastating results.Security testing strategy should be defined early at the planning stage. Appropriate teams/consultants should be involved for security testing.
Mitigation
· Early security assessment of code vulnerability ( i.e. using SonarQUBE)
· Availability of specialist for security testing
· Have a tight audit process (third party and internal)
Performance
A slow and memory consuming application (especially mobile apps) will not be used by the consumers for long. A solid performance testing strategy and benchmarking should be defined. Virtualisation comes handy when some systems are not available for performance testing. Performance testing can also overload the environment with large amount of data. This also can be avoided with virtualisation.
Mitigation
· Early performance testing on application components
· Virtualisation of services and database
· Constant production performance monitoring
· Establish good coding practices