What are test varieties?
When organizing testing, in the traditional view on testing the test manager had to structure the testing activities in a hierarchical way and based on quality characteristics. But also a test manager often distinguished various stages. Defined terms that were often used are Test Level, Test Type, Test Phase and Test Stage.
In today’s view on testing people involved in testing are hesitant to use the word Test Level since it seems to imply that various groups, based on various hierarchical responsibilities, will perform various testing tasks without interaction between these test levels.
Also many testers have often struggled to distinguish between Test Levels and Test Types. And a Test Stage, is that identical to a Test Level or not?
What should be our focus when organizing testing?
All testing activities together must cover all important areas and aspects of the system under test, that’s the main objective.
To cope with the confusion around how to distinguish testing tasks we introduce the term Test Variety.
The term Test Variety aims at making all stakeholders aware that there will always be different needs for testing and thus different test varieties will have to be organized. Whether these are organized separately or combined depends on the situation.
Test managers (or people performing test management tasks) will distinguish the relevant test varieties for their specific situation, for example while putting together their test strategy. All other people involved in testing will be involved, for example while making choices about the relevant test varieties, or while participating in the activities related to a specific test variety.
The test strategy (in whatever form, e.g. as part of a Master Test Plan in traditional environments or as part of the sprint planning in an Agile project) will describe the test varieties that are distinguished and the way in which testing activities are distributed among these test varieties.
To base the choice of the test varieties on relevant quality characteristics, the stages in a project, the hierarchical levels within an organization and/or any other reasons in such a way that the contribute best to have an efficient and effective setup to all testing activities.