Automating the Testing of Object Behaviour: A Statechart-Driven Approach

The evolution of current modeling specifications gives rise to the problem of generating automated test cases from a variety of application tools. Past endeavours on behavioural testing of UML statecharts have not systematically leveraged the potential of existing graph theory for testing of objects. Therefore there exists a need for a simple, tool-independent, and effective method for automatic test generation. An architecture, codenamed ACUTE-J (Automated stateChart Unit Testing Engine for Java), for automating the unit test generation process is presented. A sequential approach for converting UML statechart diagrams to JUnit test classes is described, with the application of existing graph theory. Research byproducts such as a universal XML Schema and API for statechart-driven testing are also proposed. The result from a Java implementation of ACUTE-J is discussed in brief. The Chinese Postman algorithm is utilised as an illustration for a run-through of the ACUTE-J architecture.





References:
[1] I. A. Niaz and J. Tanaka, "An Object-Oriented Approach To Generate
Java Code From UML Statecharts," International Journal of Computer
& Information Sceinces (IJCIS), vol. Vol. 6, 2005.
[2] I. A. Niaz and J. Tanaka, "Mapping Statecharts to Java Code", IASTED
International Conference on Software Engineering (SE2004), Innsbruck,
Austria, February 2004.
[3] C. Crichton, A. Cavarra, and J. Davies, "Using UML for Automatic Test
Generation", Automated Software Engineering, 2001.
[4] H. Robinson, "Graph Theory Techniques in Model-Based Testing",
International Conference on Testing Computer Software, 1999.
[5] H. Robinson, "Intelligent Test Automation". Soft-ware Testing &
Quality Engineering magazine, September-October 2000.
http://www.geocities.com-/harry_robinson_testing/robinson.pdf
[6] E. Gamma, R. Helm, R. Johnson and J. Vlissides, Design Patterns -
Elements of Reusable Object-Oriented Software, Addison-Wesley, 1996.
[7] B.P. Douglass, Real Time UML - Developing efficient objects for
embedded systems, Addison-Wesley, Massachusetts, 1998.
[8] I. K. El-Far and J. A. Whittaker, "Model-based Software Testing,"
Encyclopedia on Software Engineering, 2001.
[9] P. Metz, J O-Brien and W. Weber, "Code Generation Concepts for
Statechart Diagrams of the UML v1.1", Object Technology Group
(OTG) Conference, University of Vienna, Austria, June 1999.
[10] Y.G. Kim, H.S. Hong, S.M. Cho, D.H. Bae, S.D. Cha, "Test Cases
Generation from UML State Diagrams", IEE Proceedings - Software,
146(4):187-192, August 1999.
[11] J. Offutt and A. Abdurazik, "Generating Tests from UML
Specifications", Second International Conference on the Unified
Modeling Language (UML 99), Fort Collins, CO, October 1999, pp.
416-429.
[12] J. Hartmann, C. Imoberdorf, and M. Meisinger, "UML-Based Integration
Testing", International Symposium on Software Testing and Analysis
2000 (ISSTA 2000), Portland, USA, 2000.
[13] J. Takahashi and Y. Kakuda, "Extended-model Based Testing by
Directed Chinese Postman Algorithm", 7th IEEE International
Symposium on High Assurance Systems Engineering (HASE'02), Tokyo,
Japan, 2002.
[14] J. Grundy, Y. Cai and A. Lui, "Generation of Distributed System Testbeds
from High-level Software Architecture Descriptions", Automated
Software Engineering Conference, San Diego, USA, 2001.
[15] Li. Liuying and Q. Zhichang, "Test Selection from UML Statecharts",
31st International Conference on Technology of Object-Oriented
Language and Systems, Nanjing, China, 1999.
[16] S. Kansomkeat and W. Rivepiboon, "Automated-Generating Test Case
Using UML Statechart Diagrams", 2003 Annual Research Conference of
the South African Institute of Computer Scientists and Information
Technologists on Enablement Through Technology, South Africa, 2003.
[17] M. J. Rutherford and A.L. Wolf, "A Case for Test-Code Generation in
Model-Driven Systems", Second International Conference on
Generative Programming and Component Engineering, Erfurt,
Germany, 2003.
[18] N. Eickelmann and A. Willey, "An Integrated System Test
Environment", 14th International Internet & Software Quality Week
2001 (QW2001), San Francisco, May 2001.
[19] Testing Software Based Systems: The Final Frontier (Online). Available:
http://www.softwaretechnews.com/stn3-3/final-frontier.html