Model-Based Coverage-Driven Test Suite Generation for Software Product Lines

  • Harald Cichos
  • Sebastian Oster
  • Malte Lochau
  • Andy Schürr
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6981)


Software Product Line (SPL) engineering is a popular approach for the systematic reuse of software artifacts across a large number of similar products. Unfortunately, testing each product of an SPL separately is often unfeasible. Consequently, SPL engineering is in conflict with standards like ISO 26262, which require each installed software configuration of safety-critical SPLs to be tested using a model-based approach with well-defined coverage criteria.

In this paper we address this dilemma and present a new SPL test suite generation algorithm that uses model-based testing techniques to derive a small test suite from one variable 150% test model of the SPL such that a given coverage criterion is satisfied for the test model of every product. Furthermore, our algorithm simplifies the subsequent selection of a small, representative set of products (w.r.t. the given coverage criterion) on which the generated test suite can be executed.


Test Model Test Suite Software Product Line Coverage Criterion Alarm System 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Oster, S., Wübbeke, A., Engels, G., Schürr, A.: Model-Based Software Product Lines Testing Survey. In: Zander, J., Schieferdecker, I., Mosterman, P. (eds.) Model-based Testing for Embedded Systems. CRC Press/Taylor&Francis (2011)Google Scholar
  2. 2.
    ISO: ISO - International Organization for Standardization. Website (2011), (visited on May 2, 2011)
  3. 3.
    Scheidemann, K.: Verifying Families of System Configurations. PhD thesis, TU Munich (2007)Google Scholar
  4. 4.
    Engström, E., Skoglund, M., Runeson, P.: Empirical evaluations of regression test selection techniques. In: Rombach, H.D., Elbaum, S.G., Münch, J. (eds.) Proc. of ESEM 2008, pp. 22–31 (2008)Google Scholar
  5. 5.
    Grönniger, H., Krahn, H., Pinkernell, C., Rumpe, B.: Modeling Variants of Automotive Systems using Views. In: Modellierung (2008)Google Scholar
  6. 6.
    Jain, T.K., Kushwaha, D.S., Misra, A.K.: Optimization of the Quine-McCluskey Method for the Minimization of the Boolean Expressions. In: Proc. of the ICAS 2008, pp. 165–168. IEEE, Los Alamitos (2008)Google Scholar
  7. 7.
    Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical report, Carnegie-Mellon University Software Engineering Institute (1990)Google Scholar
  8. 8.
    Souza, S., Maldonado, J., Fabbri, S., Masiero, P.: Statecharts Specifications: A Family of Coverage Testing Criteria. In: CLEI 2000 (2000)Google Scholar
  9. 9.
    Haschemi, S.: Azmun - The Model-Based Testing Framework. Website (2011), (visited on May 2, 2011)
  10. 10.
    Cichos, H., Oster, S., Lochau, M., Schürr, A.: Extended Version of Model-based Coverage-Driven Test Suite Generation for Software Product Lines. Technical Report 07, TU Braunschweig (2011)Google Scholar
  11. 11.
    Cichos, H., Heinze, T.S.: Efficient Test Suite Reduction by Merging Pairs of Suitable Test Cases. In: Dingel, J., Solberg, A. (eds.) MODELS 2010. LNCS, vol. 6627, pp. 244–258. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  12. 12.
    Fraser, G., Wotawa, F., Ammann, P.: Testing with Model Checkers: A Survey. Software Testing, Verification and Reliability 19, 215–261 (2009)CrossRefGoogle Scholar
  13. 13.
    Olimpiew, E.M.: Model-Based Testing for Software Product Lines. PhD thesis, George Mason University (2008)Google Scholar
  14. 14.
    Reuys, A., Kamsties, E., Pohl, K., Reis, S.: Model-Based System Testing of Software Product Families. In: Pastor, Ó., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, pp. 519–534. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  15. 15.
    Hartmann, J., Vieira, M., Ruder, A.: A UML-based Approach for Validating Product Lines. In: Geppert, B., Krueger, C. (eds.) Proc. of the SPLiT 2004, pp. 58–65 (2004)Google Scholar
  16. 16.
    Weißleder, S., Sokenou, D., Schlingloff, H.: Reusing State Machines for Automatic Test Generation in ProductLines. In: Proc. of the MoTiP 2008 (2008)Google Scholar
  17. 17.
    Pure-Systems: pure-systems GmBH. Website (2011), (visited on May 2, 2011)
  18. 18.
    Kim, C.H.P., Batory, D.S., Khurshid, S.: Reducing Combinatorics in Testing Product Lines. In: Proc. of the AOSD 2011, pp. 57–68. ACM, New York (2011)Google Scholar
  19. 19.
    Oster, S., Markert, F., Ritter, P.: Automated Incremental Pairwise Testing of Software Product Lines. In: Bosch, J., Lee, J. (eds.) SPLC 2010. LNCS, vol. 6287, pp. 196–210. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  20. 20.
    Perrouin, G., Sen, S., Klein, J., Traon, B.B.Y.L.: Automated and Scalable T-wise Test Case Generation Strategies forSoftware Product Lines. In: ICST 2010, pp. 459–468 (2010)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Harald Cichos
    • 1
  • Sebastian Oster
    • 1
  • Malte Lochau
    • 2
  • Andy Schürr
    • 1
  1. 1.Real-Time Systems LabTU DarmstadtGermany
  2. 2.Institute for Programming and Reactive SystemsTU BraunschweigGermany

Personalised recommendations