Suggest a patterm

I am writing code where there are test classes which perform some test on input data. The input data could be of two types (very less chances to get other kind of input data in future). There are different test categories, which performs tests on input data (test category may increase in future). These test categories have different tests under it. The test logic may very for some of the test in a test category depending upon the input data. 

All test categories need to be run one by one for the given input data. The call to test category should be considering that these might remove / added in future.