Adequacy of Object-Oriented Framework System-Based Testing Techniques

An application framework provides a reusable design and implementation for a family of software systems. If the framework contains defects, the defects will be passed on to the applications developed from the framework. Framework defects are hard to discover at the time the framework is instantiated. Therefore, it is important to remove all defects before instantiating the framework. In this paper, two measures for the adequacy of an object-oriented system-based testing technique are introduced. The measures assess the usefulness and uniqueness of the testing technique. The two measures are applied to experimentally compare the adequacy of two testing techniques introduced to test objectoriented frameworks at the system level. The two considered testing techniques are the New Framework Test Approach and Testing Frameworks Through Hooks (TFTH). The techniques are also compared analytically in terms of their coverage power of objectoriented aspects. The comparison study results show that the TFTH technique is better than the New Framework Test Approach in terms of usefulness degree, uniqueness degree, and coverage power.

Authors:



References:
[1] H. Chen, T. Tse, and T. Chen, Jan. 2001, TACCLE: a methodology for
object-oriented software Testing At the Class and Cluster Levels, ACM
Transactions on Software Engineering and Methodology, Vol.10, No.1,
pp.56-109.
[2] K. Beck and R, Johnson, 1994. Patterns generated architectures, Proc.
of ECOOP 94, 139-149.
[3] G. Froehlich, 2002. Hooks: an aid to the reuse of object-oriented
frameworks, Ph.D. Thesis, University of Alberta, Department of
Computing Science.
[4] R. Binder, 1999. Testing object-oriented systems, Addison Wesley.
[5] W. Tsai, Y. Tu, W. Shao, and E. Ebner, October, 1999. Testing
extensible design patterns in object-oriented frameworks through
scenario templates, 23rd Annual International Computer Software and
Applications Conference, Phoenix, Arizona.
[6] Y. Wang, D. Patel, G. King, I. Court, G. Staples, M. Ross, and M.
Fayad, March 2000, On built-in test reuse in object-oriented framework
design, ACM Computing Surveys (CSUR), Vol. 32(1es), pp. 7-12.
[7] J. Al Dallal and P. Sorenson, September 2002, System testing for
object-oriented frameworks using hook technology, Proc. of the 17th
IEEE International Conference on Automated Software Applications
(ASE-02), Edinburgh, UK, pp. 231-236.
[8] J. Al Dallal and P. Sorenson, 2005, Reusing class-based test cases for
testing object-oriented framework interface classes, Journal of Software
Maintenance and Evolution: Research and Practise, Vol. 17, No. 3, pp.
169-196.
[9] R. Kauppinen, J. Taina, and A. Tevanlinna, Hook and template
coverage criteria for testing framework-based software product
families, In Proceedings of the International Workshop on Software
Product Line Testing, Boston, Massachusetts, USA, 2004.
[10] A. Tevanlinna, Product family testing with RITA, Proceedings of the
Eleventh Nordic Workshop on Programming and Software
Development Tools and Techniques, Turku, Finland, 2004.
[11] M. B. Cohen, M. B. Dwyer, and J. Shi, Coverage and adequacy in
software product line testing, Proceedings of the International
Symposium on Software Testing and Analysis 2006 workshop on Role
of software architecture for testing and analysis, Portland, Maine,
USA, 2006.
[12] J. Al Dallal, Testing object-oriented hook methods, accepted for
publication in the Kuwait Journal of Science and Engineering, 2007.
[13] J. Anvik, S. MacDonald, D. Szafron, J. Schaeffer, S. Bromling and K.
Tan, Generating Parallel Programs from the Wavefront Design Pattern,
Proceedings of the 7th International Workshop on High-Level Parallel
Programming Models and Supportive Environments (HIPS'02), Fort
Lauderdale, Florida. April 2002
[14] R. Binder, Testing object-oriented software: A survey, Software
Testing, Verification and Reliability, Vol. 6 No. 3/4, pp. 125-252, 1996.
[15] J. Al Dallal and P. Sorenson, Generating class based test cases for
interface classes of object-oriented black box frameworks, Transactions
on Engineering, Computing and Technology, November 2006, Vol. 16,
pp. 90-95.
[16] J. Al Dallal and P. Sorenson, Generating state based testing models for
of object-oriented framework interface classes, Transactions on
Engineering, Computing and Technology, November 2006, Vol. 16, pp.
96-102.
[17] J. Al Dallal and P. Sorenson, The coverage of the object-oriented
framework application class-based test cases, Transactions on
Engineering, Computing and Technology, November 2006, Vol. 16, pp.
103-107.
[18] J. Bosch, Design and Use of Software Architectures. Addison-Wesley,
2000.
[19] A. Tevanlinna, J. Taina, and R. Kauppinen, Product family testing: a
survey, ACM SIGSOFT Software Engineering Notes, Vol. 29, No. 2,
pp. 12-18, 2004.
[20] J. McGregor, Testing a software product line, Technical Report
CMU/SEI-2001-TR-022, Software Engineering Institute, Pittsburgh,
PA. 2001.
[21] M. Grindal, J. Offutt, and S.F. Andler, Combination testing strategies: a
survey, Software Testing, Verification and Reliability, 2005, Vol. 15,
No. 3, pp.167-199.
[22] S. McDonald, J. Schaeffer, and D. Szafron, Pattern-based objectoriented
parallel programming. Proceedings of the First International
Scientific Computing in Object-Oriented Parallel Environments
Conference (ISCOPE-97), Vol. 1343 of Lecture Notes in Computer
Science, 1997, pp 167-274.