A Classification of Test Purposes Based on Testable Properties

  • Simone HanazumiEmail author
  • Ana C. V. de Melo
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9155)


Test purposes are today key-elements for making the formal testing approach applicable to software. They are abstractions for a set of test cases to be observed in programs and some tools for formal testing concentrate their effort to apply test purposes to programs. Defining test purposes for actual systems, however, are not very straightforward. We must first realize what is the property behind the set of test cases we want to address. To help in defining the test purposes for a system under test, this paper presents a classification for test purposes based on the testable properties patterns. First, we analyze the meaning of properties patterns in the light of test purposes and then check the testability of these patterns. As a result, we provide a classification for testable patterns applicable to test purposes and users can choose which pattern better fits his/her set of test cases to be observed. Moreover, since test purposes are defined as standard properties, a model checker can be used to find executions for which test purposes can be satisfied.


Program specification Linear temporal logic Software testing Test purposes Formal verification 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Baier, C., Katoen, J.P.: Principles of Model Checking (Representation and Mind Series). The MIT Press (2008)Google Scholar
  2. 2.
    de Vries, R.G., Tretmans, J.: Towards formal test purposes. In: Tretmans, J., Brinksma, H. (eds.) Formal Approaches to Testing of Software 2001 (FATES 2001). BRICS Notes Series, vol. NS-01-4, Aarhus, Denkmark, pp. 61–76, August 2001.
  3. 3.
    Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: Proceedings of the 21st International Conference on Software Engineering, ICSE 1999, pp. 411–420. ACM, New York (1999)Google Scholar
  4. 4.
    Falcone, Y., Fernandez, J.-C., Jéron, T., Marchand, H., Mounier, L.: More testable properties. In: Petrenko, A., Simão, A., Maldonado, J.C. (eds.) ICTSS 2010. LNCS, vol. 6435, pp. 30–46. Springer, Heidelberg (2010) CrossRefGoogle Scholar
  5. 5.
    Hanazumi, S., de Melo, A.C.V.: On the Testability of Properties Patterns, (Manuscript submitted for publication)Google Scholar
  6. 6.
    Hanazumi, S., de Melo, A.C.V., Păsăreanu, C.S.: From testing purposes to formal JPF properties. In: Java PathFinder Workshop. ACM (2014)Google Scholar
  7. 7.
    Hierons, R.M., Bogdanov, K., Bowen, J.P., Cleaveland, R., Derrick, J., Dick, J., Gheorghe, M., Harman, M., Kapoor, K., Krause, P., Lüttgen, G., Simons, A.J.H., Vilkomir, S., Woodward, M.R., Zedan, H.: Using formal specifications to support testing. ACM Comput. Surv. 41(2), 9:1–9:76 (2009)CrossRefGoogle Scholar
  8. 8.
    Holzmann, G.J.: The Model Checker SPIN. IEEE Trans. Softw. Eng. 23(5), 279–295 (1997)MathSciNetCrossRefGoogle Scholar
  9. 9.
    Jard, C., Jéron, T.: TGV: theory, principles and algorithms: A tool for the automatic synthesis of conformance test cases for non-deterministic reactive systems. Int. J. Softw. Tools Technol. Transf. 7(4), 297–315 (2005)CrossRefGoogle Scholar
  10. 10.
    Ledru, Y., du Bousquet, L., Bontron, P., Maury, O., Oriat, C., Potet, M.L.: Test purposes: adapting the notion of specification to testing. In: Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001), pp. 127–134. IEEE Comput. Soc. (2001)Google Scholar
  11. 11.
    Manna, Z., Pnueli, A.: A hierarchy of temporal properties (invited paper, 1989). In: Proceedings of the Ninth Annual ACM Symposium on Principles of Distributed Computing, PODC 1090, pp. 377–410. ACM, New York (1990).
  12. 12.
    Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems - Specification. Springer-Verlag New York Inc., New York (1992)CrossRefGoogle Scholar
  13. 13.
    Nahm, R., Grabowski, J., Hogrefe, D.: Test Case Generation for Temporal Properties.Tech. rep., Bern University (1993)Google Scholar
  14. 14.
    Patterns, S.: (last access: January 2015)
  15. 15.
    Pnueli, A.: The temporal logic of programs. In: SFCS 1977: Proceedings of the 18th Annual Symposium on Foundations of Computer Science, pp. 46–57. IEEE Computer Society, Washington (1977)Google Scholar
  16. 16.
    da Silva, D.A., Machado, P.D.L.: Towards Test Purpose Generation from CTL Properties for Reactive Systems. Electronic Notes in Theoretical Computer Science 164(4), 29–40 (2006)CrossRefGoogle Scholar
  17. 17.
    Tretmans, J.: Conformance testing with labelled transition systems: Implementation relations and test generation. Computer Networks and ISDN Systems 29(1), 49–79 (1996)CrossRefGoogle Scholar
  18. 18.
    Tretmans, J.: Model based testing with labelled transition systems. In: Hierons, R.M., Bowen, J.P., Harman, M. (eds.) FORTEST. LNCS, vol. 4949, pp. 1–38. Springer, Heidelberg (2008) CrossRefGoogle Scholar
  19. 19.
    Tretmans, J.: Model-based testing and some steps towards test-based modelling. In: Bernardo, M., Issarny, V. (eds.) SFM 2011. LNCS, vol. 6659, pp. 297–326. Springer, Heidelberg (2011) CrossRefGoogle Scholar
  20. 20.
    Weiglhofer, M., Fraser, G., Wotawa, F.: Using coverage to automate and improve test purpose based testing. Inf. Softw. Technol. 51(11), 1601–1617 (2009)CrossRefGoogle Scholar
  21. 21.
    Weiglhofer, M., Wotawa, F.: Improving coverage based test purposes. In: International Conference on Quality Software, pp. 219–228 (2009)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of São PauloSão PauloBrazil

Personalised recommendations