Advertisement

Association of Under-Approximation Techniques for Generating Tests from Models

  • Pierre-Christophe Bué
  • Jacques Julliand
  • Pierre-Alain Masson
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6706)

Abstract

In this paper we present a Model-Based Testing approach with which we generate tests from an abstraction of a source behavioural model. We show a new algorithm that computes the abstraction as an under-approximation of the source model. Our first contribution is to combine two previous approaches proposed by Ball and Pasareanu et al. to compute May, Must+ and Must- abstract transition relations. Proof techniques are used to compute these transition relations. The tests obtained by covering the abstract transitions have to be instantiated from the source model. So, following Pasareanu et al., our algorithm additionally computes a concrete transition relation: the tests obtained as sequences of concrete transitions need not be instantiated from the source model. Another contribution is to propose a choice of relevant parameters and heuristics to pilot the tests computation. We experiment our approach and compare it with a previous approach of ours to compute tests from an abstraction that over-approximates the source model.

Keywords

Model-Based Testing Abstraction Over and under- approximations 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Utting, M., Legeard, B.: Practical Model-Based Testing. Morgan Kaufmann, San Francisco (2006)Google Scholar
  2. 2.
    Graf, S., Saïdi, H.: Construction of abstract state graphs with PVS. In: Grumberg, O. (ed.) CAV 1997. LNCS, vol. 1254, pp. 72–83. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  3. 3.
    Cousot, P., Cousot, R.: Abstract interpretation frameworks. J. Log. Comput. 2(4), 511–547 (1992)CrossRefzbMATHGoogle Scholar
  4. 4.
    Păsăreanu, C.S., Visser, W.: A survey of new trends in symbolic execution for software testing and analysis. STTT 11(4), 339–353 (2009)CrossRefGoogle Scholar
  5. 5.
    Bouquet, F., Bué, P.C., Julliand, J., Masson, P.A.: Test generation based on abstraction and test purposes to complement structural tests. In: A-MOST 2010, 6th Int. Workshop on Advances in Model Based Testing, Paris, France (April 2010)Google Scholar
  6. 6.
    Ball, T.: A theory of predicate-complete test coverage and generation. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2004. LNCS, vol. 3657, pp. 1–22. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  7. 7.
    Păsăreanu, C.S., Pelánek, R., Visser, W.: Predicate abstraction with under-approximation refinement. LMCS 3(1) (2007)Google Scholar
  8. 8.
    Julliand, J., Masson, P.A., Tissot, R.: Generating security tests in addition to functional tests. In: AST 2008, pp. 41–44. ACM Press, NY (2008)Google Scholar
  9. 9.
    Abrial, J.R.: Modeling in Event-b: System and Software Design. Cambridge Univ. Press, Cambridge (2010)CrossRefzbMATHGoogle Scholar
  10. 10.
    Dijkstra, E.: Guarded commands, nondeterminacy, and formal derivation of programs. C. ACM 18 (1975)Google Scholar
  11. 11.
    Dijkstra, E.: A Discipline of Programming. Prentice-Hall, Englewood Cliffs (1976)zbMATHGoogle Scholar
  12. 12.
    Hoare, C.: An axiomatic basis for computer programming. CACM 12, 576–580 (1969)CrossRefzbMATHGoogle Scholar
  13. 13.
    Bert, D., Cave, F.: Construction of finite labelled transistion systems from b abstract systems. In: Grieskamp, W., Santen, T., Stoddart, B. (eds.) IFM 2000. LNCS, vol. 1945, pp. 235–254. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  14. 14.
    de Moura, L., Bjørner, N.: An efficient smt solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  15. 15.
    Atelier B: Case tool for developing software proven without default, http://www.atelierb.eu
  16. 16.
    Ball, T., Majumdar, R., Millstein, T.D., Rajamani, S.K.: Automatic predicate abstraction of c programs. In: PLDI, pp. 203–213 (2001)Google Scholar
  17. 17.
    Ball, T., Kupferman, O., Yorsh, G.: Abstraction for falsification. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 67–81. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  18. 18.
    Namjoshi, K.S., Kurshan, R.P.: Syntactic program transformations for automatic abstraction. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, pp. 435–449. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  19. 19.
    Gulavani, B.S., Henzinger, T.A., Kannan, Y., Nori, A.V., Rajamani, S.K.: Synergy: a new algorithm for property checking. In: SIGSOFT FSE, pp. 117–127 (2006)Google Scholar
  20. 20.
    Beckman, N.E., Nori, A.V., Rajamani, S.K., Simmons, R.J., Tetali, S., Thakur, A.V.: Proofs from tests. IEEE Trans. Software Eng. 36(4), 495–508 (2010)CrossRefGoogle Scholar
  21. 21.
    Rapin, N., Gaston, C., Lapitre, A., Gallois, J.P.: Behavioral unfolding of formal specifications based on communicating extended automata. In: ATVA 2003 (2003)Google Scholar
  22. 22.
    Godefroid, P., Klarlund, N., Sen, K.: DART: directed automated random testing. In: PLDI, pp. 213–223 (2005)Google Scholar
  23. 23.
    Sen, K., Marinov, D., Agha, G.: CUTE: a concolic unit testing engine for C. In: ESEC/SIGSOFT FSE, pp. 263–272 (2005)Google Scholar
  24. 24.
    Cadar, C., Ganesh, V., Pawlowski, P.M., Dill, D.L., Engler, D.R.: EXE: automatically generating inputs of death. In: ACM Conference on Computer and Communications Security, pp. 322–335 (2006)Google Scholar
  25. 25.
    PEX: Automated exploratory testing for .NET, http://research.microsoft.com/en-us/projects/pex
  26. 26.
    Calamé, J., Ioustinova, N., van de Pol, J.: Automatic model-based generation of parameterized test cases using data abstraction. ENTCS, vol. 191, pp. 25–48 (2007)Google Scholar
  27. 27.
    Jeannet, B., Jéron, T., Rusu, V., Zinovieva, E.: Symbolic test selection based on approximate analysis. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 349–364. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  28. 28.
    Majumdar, R., Sen, K.: Hybrid concolic testing. In: ICSE 2007, pp. 416–426 (2007)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Pierre-Christophe Bué
    • 1
  • Jacques Julliand
    • 1
  • Pierre-Alain Masson
    • 1
  1. 1.LIFCUniversité de Franche-ComtéBesançon CedexFrance

Personalised recommendations