Abstract
Today, test suites of several ten thousand lines of code are specified using the Testing and Test Control Notation (TTCN-3). Experience shows that the resulting test suites suffer from quality problems with respect to internal quality aspects like usability, maintainability, or reusability. Therefore, a quality assessment of TTCN-3 test suites is desirable. A powerful approach to detect quality problems in source code is the identification of code smells. Code smells are patterns of inappropriate language usage that is error-prone or may lead to quality problems. This paper presents a quality assessment approach for TTCN-3 test suites which is based on TTCN-3 code smells: To this aim, various TTCN-3 code smells have been identified and collected in a catalogue; the detection of instances of TTCN-3 code smells in test suites has been automated by a tool. The applicability of this approach is demonstrated by providing results from the quality assessment of several standardised TTCN-3 test suites.
Chapter PDF
Similar content being viewed by others
Keywords
- Test Suite
- Session Initiation Protocol
- Statement Block
- European Telecommunication Standard Institute
- European Telecommunication Standard Institute
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
ETSI: ETSI Standard (ES) 201 873-1 V3.2.1 (2007-02): The Testing and Test Control Notation version 3; Part 1: TTCN-3 Core Language. European Telecommunications Standards Institute (ETSI), Sophia-Antipolis, France, also published as ITU-T Recommendation Z.140 (February 2007)
Grabowski, J., Hogrefe, D., Réthy, G., Schieferdecker, I., Wiles, A., Willcock, C.: An introduction to the testing and test control notation (TTCN-3). Computer Networks 42(3), 375–403 (2003)
Zeiss, B., Neukirchen, H., Grabowski, J., Evans, D., Baker, P.: Refactoring and Metrics for TTCN-3 Test Suites. In: Gotzhein, R., Reed, R. (eds.) SAM 2006. LNCS, vol. 4320, pp. 148–165. Springer, Heidelberg (2006)
ETSI: Technical Specification (TS) 102 027-3 V3.2.1 (2005-07): SIP ATS & PIXIT; Part 3: Abstract Test Suite (ATS) and partial Protocol Implementation eXtra Information for Testing (PIXIT). European Telecommunications Standards Institute (ETSI), Sophia-Antipolis, France (July 2005)
ETSI: Technical Specification (TS) 102 516 V1.1 (2006-04): IPv6 Core Protocol; Conformance Abstract Test Suite (ATS) and partial Protocol Implementation eXtra Information for Testing (PIXIT). European Telecommunications Standards Institute (ETSI), Sophia-Antipolis, France (April 2006)
Baker, P., Loh, S., Weil, F.: Model-Driven Engineering in a Large Industrial Context – Motorola Case Study. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 476–491. Springer, Heidelberg (2005)
ETSI: Specialist Task Force 296: Maintenance of SIP Test Specifications. European Telecommunications Standards Institute (ETSI), Sophia-Antipolis, France (2007)
ETSI: Specialist Task Force 320: Upgrading and maintenance of IPv6 test specifications. European Telecommunications Standards Institute (ETSI), Sophia-Antipolis, France (2007)
ISO/IEC: ISO/IEC Standard No. 9126: Software engineering – Product quality; Parts 1–4. International Organization for Standardization (ISO) / International Electrotechnical Commission (IEC), Geneva, Switzerland (2001-2004)
Fenton, N.E., Pfleeger, S.L.: Software Metrics. PWS Publishing, Boston (1997)
Zeiss, B., Vega, D., Schieferdecker, I., Neukirchen, H., Grabowski, J.: Applying the ISO 9126 Quality Model to Test Specifications – Exemplified for TTCN-3 Test Specifications. In: Bleek, W.G., Raasch, J., Züllighoven, H. (eds.) Proceedings of Software Engineering 2007 (SE 2007), Bonn, Gesellschaft für Informatik. Lecture Notes in Informatics, vol. 105, pp. 231–242. Köllen Verlag (2007)
Fowler, M.: Refactoring – Improving the Design of Existing Code. Addison-Wesley, Boston (1999)
van Emden, E., Moonen, L.: Java Quality Assurance by Detecting Code Smells. In: Proceedings of the 9th Working Conference on Reverse Engineering, pp. 97–106. IEEE Computer Society Press, Los Alamitos (2002)
Brown, W.J., Malveau, R.C., McCormick, H.W., Mowbray, T.J.: Anti-Patterns. Wiley, New York (1998)
Fosdick, L.D., Osterweil, L.J.: Data Flow Analysis in Software Reliability. ACM Computing Surveys 8(3), 305–330 (1976)
Gamma, E., Beck, K.: JUnit (February 2007), http://junit.sourceforge.net
van Deursen, A., Moonen, L., van den Bergh, A., Kok, G.: Refactoring Test Code. In: Extreme Programming Perspectives, pp. 141–152. Addison-Wesley, Boston (2002)
Meszaros, G.: XUnit Test Patterns. Addison-Wesley, Boston (2007)
Zeiss, B.: A Refactoring Tool for TTCN-3. Master’s thesis, Institute for Informatics, University of Göttingen, Germany (March 2006) ZFI-BM-2006-05
TRex Team: TRex Website (February 2007), http://www.trex.informatik.uni-goettingen.de
ETSI: ETSI Standard (ES) 201 873-10 V3.2.1: TTCN-3 Documentation Comment Specification. European Telecommunications Standards Institute (ETSI), Sophia-Antipolis, France (to appear, 2007)
Bisanz, M.: Pattern-based Smell Detection in TTCN-3 Test Suites. Master’s thesis, Institute for Informatics, University of Göttingen, Germany (December 2006) ZFI-BM-2006-44
Baker, P., Evans, D., Grabowski, J., Neukirchen, H., Zeiss, B.: TRex – The Refactoring and Metrics Tool for TTCN-3 Test Specifications. In: Proceedings of TAIC PART 2006 (Testing: Academic & Industrial Conference – Practice And Research Techniques), Cumberland Lodge, Windsor Great Park, UK, pp. 90–94. IEEE Computer Society, Los Alamitos (2006)
Eclipse Foundation: Eclipse (February 2007), http://www.eclipse.org
Parr, T.: ANTLR parser generator (February 2007), http://www.antlr.org
Eclipse Foundation: Eclipse Test & Performance Tools Platform Project (TPTP) (February 2007), http://www.eclipse.org/tptp
Johnson, S.: Lint, a C Program Checker. Unix Programmer’s Manual, AT&T Bell Laboratories (1978)
Moha, N., Gueheneuc, Y.G.: On the Automatic Detection and Correction of Design Defects. In: Demeyer, S., Mens, K., Wuyts, R., Ducasse, S. (eds.) Proceedings of the 6th ECOOP Workshop on Object-Oriented Reengineering. LNCS, Springer, Heidelberg (to appear)
Pugh, B.: FindBugs (February 2007), http://findbugs.sourceforge.net
Dixon-Peugh, D.: PMD (February 2007), http://pmd.sourceforge.net
van Rompaey, B., du Bois, B., Demeyer, S.: Characterizing the Relative Significance of a Test Smell. In: ICSM 2006. Proceedings of the 22nd IEEE International Conference on Software Maintenance, Philadelphia, Pennsylvania, September 25–27, 2006, pp. 391–400. IEEE Computer Society, Los Alamitos (2006)
OMG: UML Testing Profile (Version 1.0 formal/05-07-07). Object Management Group (OMG) (July 2005)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 IFIP International Federation for Information Processing
About this paper
Cite this paper
Neukirchen, H., Bisanz, M. (2007). Utilising Code Smells to Detect Quality Problems in TTCN-3 Test Suites. In: Petrenko, A., Veanes, M., Tretmans, J., Grieskamp, W. (eds) Testing of Software and Communicating Systems. FATES TestCom 2007 2007. Lecture Notes in Computer Science, vol 4581. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-73066-8_16
Download citation
DOI: https://doi.org/10.1007/978-3-540-73066-8_16
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-73065-1
Online ISBN: 978-3-540-73066-8
eBook Packages: Computer ScienceComputer Science (R0)