Environment-Model Based Testing with Differential Evolution in an Industrial Setting

  • Annamária SzenkovitsEmail author
  • Noémi Gaskó
  • Erwan Jahier
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9597)


Reactive systems interact continuously with their environments. In order to test such systems, one needs to design executable environment models. Such models are intrinsically stochastic, because environment may vary a lot, and also because they are not perfectly known. We propose an environment-model based testing framework optimized for reactive systems, where Differential Evolution (de ) is used to fine-tune the environment model and to optimize test input generation. In order to evaluate the proposed method, we present a case study involving a real-world scade system from the domain of railway automation. The problem specification was proposed by our industrial partner, Siemens. Our experimental data shows that de can be used efficiently to increase the structural coverage of the System Under Test.


Evolutionary testing Differential Evolution Model-based testing Reactive systems 



This material is based upon work supported by the Siemens international Railway Automation Graduate School (iRAGS) and the scade Academic Program.


  1. 1.
    Beizer, B.: Software Testing Techniques, 2nd edn. Van Nostrand Reinhold Co., New York (1990)zbMATHGoogle Scholar
  2. 2.
    Ammann, P., Offutt, J.: Introduction to Software Testing, 1st edn. Cambridge University Press, New York (2008)CrossRefzbMATHGoogle Scholar
  3. 3.
    Raymond, P., Roux, Y., Jahier, E.: Lutin: a language for specifying and executing reactive scenarios. EURASIP J. Embed. Syst. 2008, 1–11 (2008)CrossRefGoogle Scholar
  4. 4.
    Dormoy, F.X.: Scade 6 a model based solution for safety critical software development. In: ERTS 2008 (2013)Google Scholar
  5. 5.
    McMinn, P., Holcombe, M.: The state problem for evolutionary testing. In: Cantú-Paz, E., et al. (eds.) GECCO 2003. LNCS, vol. 2724, pp. 2488–2498. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  6. 6.
    Vos, T.E., et al.: Evolutionary functional black-box testing in an industrial setting. Softw. Qual. Control 21, 259–288 (2013)CrossRefGoogle Scholar
  7. 7.
    Wegener, J., Buhr, K., Pohlheim, H.: Automatic test data generation for structural testing of embedded software systems by evolutionary testing. In: Proceedings of the Genetic and Evolutionary Computation Conference, GECCO 2002, pp. 1233–1240. Morgan Kaufmann Publishers Inc., San Francisco (2002)Google Scholar
  8. 8.
    Wegener, J., Baresel, A., Sthamer, H.: Evolutionary test environment for automatic structural testing. Inf. Softw. Technol. 43, 841–854 (2001)CrossRefGoogle Scholar
  9. 9.
    Baresel, A., Pohlheim, H., Sadeghipour, S.: Structural and functional sequence test of dynamic and state-based software with evolutionary algorithms. In: Cantú-Paz, E., et al. (eds.) GECCO 2003. LNCS, vol. 2724, pp. 2428–2441. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  10. 10.
    Corno, F., Cumani, G., Reorda, M.S., Squillero, G.: Evolutionary test program induction for microprocessor design verification. In: 2012 IEEE 21st Asian Test Symposium, p. 368 (2002)Google Scholar
  11. 11.
    Iwashita, H., Kowatari, S., Nakata, T., Hirose, F.: Automatic test program generation for pipelined processors. In: IEEE/ACM International Conference on Computer-Aided Design, pp. 580–583 (1994)Google Scholar
  12. 12.
    Cheng, A., Lim, C.C.: Markov modelling and parameterisation of genetic evolutionary test generations. J. Glob. Optim. 51, 743–751 (2011)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Halbwachs, N., Caspi, P., Raymond, P., Pilaud, D.: The synchronous data flow programming language lustre. Proc. IEEE 79, 1305–1320 (1991)CrossRefGoogle Scholar
  14. 14.
    Jones, J., Harrold, M.: Test-suite reduction and prioritization for modified condition/decision coverage. IEEE Trans. Softw. Eng. 29, 195–209 (2003)CrossRefGoogle Scholar
  15. 15.
    Jahier, E., Raymond, P., Baufreton, P.: Case studies with lurette v2. Softw. Tools Technol. Transf. 8, 517–530 (2006). CrossRefGoogle Scholar
  16. 16.
    Jahier, E., Halbwachs, N., Raymond, P.: Engineering functional requirements of reactive systems using synchronous languages. In: International Symposium on Industrial Embedded Systems, SIES 2013, Porto, Portugal (2013)Google Scholar
  17. 17.
    Raymond, P., Nicollin, X., Halbwachs, N., Weber, D.: Automatic testing of reactive systems. In: Proceedings of the 19th IEEE Real-Time Systems Symposium, pp. 200–209 (1998)Google Scholar
  18. 18.
    Jahier, E., Djoko-Djoko, S., Maiza, C., Lafont, E.: Environment-model based testing of control systems: case studies. In: Ábrahám, E., Havelund, K. (eds.) TACAS 2014. LNCS, vol. 8413, pp. 636–650. Springer, Heidelberg (2014)CrossRefGoogle Scholar
  19. 19.
    Official github repository of the open etcs project (2008). Accessed November 2015
  20. 20.
    Storn, R., Price, K.: Differential evolution-a simple and efficient heuristic for global optimization over continuous spaces. J. Glob. Optim. 11, 341–359 (1997)MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Das, S., Suganthan, P.N.: Differential evolution: a survey of the state-of-the-art. IEEE Trans. Evol. Comput. 15, 4–31 (2011)CrossRefGoogle Scholar
  22. 22.
    Liu, J., Lampinen, J.: On setting the control parameter of the differential evolution method. In: Proceedings of the 8th Internationl Conference Soft Computing, MENDEL 2002, pp. 11–18 (2002)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Annamária Szenkovits
    • 1
    Email author
  • Noémi Gaskó
    • 1
  • Erwan Jahier
    • 2
  1. 1.Cluj-Napoca Faculty of Mathematics and Computer ScienceBabeş-Bolyai UniversityCluj-NapocaRomania
  2. 2.University Grenoble Alpes/CNRS, VERIMAGGrenobleFrance

Personalised recommendations