Model-based testing automates test case generation based on usage models of a system. In this paper, we introduce an approach for systematic reuse of these models for testing a large family of products. In our approach, we model system usage with hierarchical Markov chains. These models capture all possible usage scenarios for a family of systems. We document variability explicitly and separately with a feature model. We map optional and alternative features in the feature model to a set of transitions in the usage model. Transition probabilities are modified according to the selected features so that the generated test cases focus only on these features. We performed an industrial case study to evaluate the feasibility and efficiency of the approach. We observed that the cost of product line engineering adoption can be amortized with the testing of even a small number of products.
['Ceren Sahin Gebizli', 'Hasan Sözer']
Model-Based Software Product Line Testing by Coupling Feature Models with Hierarchical Markov Chain Usage Models