Applying Testability Transformations to Achieve Structural Coverage of Erlang Programs

  • Qiang Guo
  • John Derrick
  • Neil Walkinshaw
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5826)


This paper studies the structural testing of Erlang applications. A program transformation is proposed that represents the program under test as a binary tree. The challenge of achieving structural coverage can thus be interpreted as a tree-search procedure. We have developed a testing-technique that takes advantage of this tree-structure, which we demonstrate with respect to a small case study of an Erlang telephony system.


Erlang Testing Transformation FBT Structural Coverage 


  1. 1.
    Armstrong, J., Virding, R., Wikström, C., Williams, M.: Concurrent Programming in Erlang, 2nd edn. Prentice-Hall, Englewood Cliffs (1996)zbMATHGoogle Scholar
  2. 2.
    Arts, T., Hughes, J., Johansson, J., Wiger, U.: Testing Telecoms Software with Quviq Quickcheck. In: Feeley, M., Trinder, P.W. (eds.) Proceedings of the 2006 ACM SIGPLAN Workshop on Erlang (Erlang 2006), pp. 2–10. ACM Press, New York (2006)CrossRefGoogle Scholar
  3. 3.
    Bang-Jensen, J., Gutin, G.: Digraphs: Theory Algorithms and Applications. Springer, London (2001)zbMATHGoogle Scholar
  4. 4.
    Guo, Q., Derrick, J.: Eliminating overlapping of pattern matching when verifying Erlang programs in μCRL. In: 12th International Erlang User Conference (EUC 2006), Stockholm, Sweden (2006)Google Scholar
  5. 5.
    Guo, Q., Derrick, J., Hoch, C.: Verifying Erlang Telecommunication Systems with the Process Algebra μCRL. In: Suzuki, K., Higashino, T., Yasumoto, K., El-Fakih, K. (eds.) FORTE 2008. LNCS, vol. 5048, pp. 201–217. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  6. 6.
    Harman, M., Hu, L., Hierons, R., Wegener, J., Sthamer, H., Baresel, A.: Testability Transformation. IEEE Transactions on Software Engineering 30(1), 3–16 (2004)CrossRefGoogle Scholar
  7. 7.
    King, J.: Symbolic Execution and Program Testing. Communications of the ACM 19(7) (1976)Google Scholar
  8. 8.
    Kröger, F.: Temporal logic of programs. Springer, New York (1987)CrossRefzbMATHGoogle Scholar
  9. 9.
    McMinn, P.: Search-based software test data generation: a survey. Softw. Test, Verif. Reliab. 14(2), 105–156 (2004)CrossRefGoogle Scholar
  10. 10.
    Mottu, J.-M., Baudry, B., Traon, Y.: Model Transformation Testing: Oracle Issue. In: Frantzen, L., Merayo, M., Múñez, M. (eds.) 28th International Conference on Software Testing, Verificaiton and Validation Workshop (ICSTW 2008), Washington, DC, USA, pp. 105–112. IEEE Computer Society Press, Los Alamitos (2008)CrossRefGoogle Scholar
  11. 11.
    Naslavsky, L., Ziv, H., Richardson, D.J.: Using Model Transformation to Support Model-based Test Coverage Measurement. In: AST 2008: Proceedings of the 3rd international workshop on Automation of software test, pp. 1–6. ACM, New York (2008)Google Scholar
  12. 12.
    Sun, C.-A.: A Transformation-Based Approach to Generating Scenario-Oriented Test Cases from UML Activity Diagrams for Concurrent Applications. In: 32nd Annual IEEE International Computer Software and Applications Conference, pp. 160–167. IEEE Computer Society Press, Los Alamitos (2008)CrossRefGoogle Scholar
  13. 13.
    US Department of Transportation, Federal Aviation Administration. Software Approval Guidelines (2003) 8110.49Google Scholar
  14. 14.
    Voas, J., Miller, K.: Software Testability: The New Verification. IEEE Software 12(3), 17–28 (1995)CrossRefGoogle Scholar
  15. 15.
    Zhu, H., Hall, P.A.V., May, J.H.R.: Software Unit Test Coverage and Adequacy. ACM Computing Surveys 29(4), 366–427 (1997)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Qiang Guo
    • 1
  • John Derrick
    • 1
  • Neil Walkinshaw
    • 1
  1. 1.Department of Computer ScienceThe University of SheffieldPortobelloUK

Personalised recommendations