Jump to content

TTCN: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
fix list
m Hyperlink on TTCN-3
Line 1: Line 1:
{{Inappropriate tone|date=December 2007}}
{{Inappropriate tone|date=December 2007}}
'''TTCN''' is a [[programming language]] used for testing of [[communication protocol]]s and [[web service]]s. A TTCN test suite consists of many [[test case]]s written in the TTCN programming language.
'''TTCN''' is a [[programming language]] used for testing of [[communication protocol]]s and [[web service]]s. A TTCN test suite consists of many [[test case]]s written in the TTCN programming language.
Until version 2 the language was written in tables and called '''''Tree and Tabular Combined Notation'''''. Reading and editing this language required special TTCN editors. Beginning with version 3 TTCN was renamed to '''''Testing and Test Control Notation'''''. It is now closer to current programming languages and can be edited with traditional editors. TTCN-3 is more flexible than TTCN-2 in that it can be used for protocol testing as well as testing traditional software.
Until version 2 the language was written in tables and called '''''Tree and Tabular Combined Notation'''''. Reading and editing this language required special TTCN editors. Beginning with version 3 TTCN was renamed to '''''Testing and Test Control Notation'''''. It is now closer to current programming languages and can be edited with traditional editors. [[TTCN-3]] is more flexible than TTCN-2 in that it can be used for protocol testing as well as testing traditional software.


All versions of TTCN need dedicated compilers or interpreters for execution.
All versions of TTCN need dedicated compilers or interpreters for execution.

Revision as of 09:47, 11 July 2012

TTCN is a programming language used for testing of communication protocols and web services. A TTCN test suite consists of many test cases written in the TTCN programming language. Until version 2 the language was written in tables and called Tree and Tabular Combined Notation. Reading and editing this language required special TTCN editors. Beginning with version 3 TTCN was renamed to Testing and Test Control Notation. It is now closer to current programming languages and can be edited with traditional editors. TTCN-3 is more flexible than TTCN-2 in that it can be used for protocol testing as well as testing traditional software.

All versions of TTCN need dedicated compilers or interpreters for execution.

TTCN is widely used, for example; ETSI, ITU for the testing of telecommunication protocols. Conformance test cases of ETSI standards like ISDN, DECT, GSM, EDGE, 3G, DSRC have also been written in TTCN. Recently it has also been used for testing various protocol standards e.g. Bluetooth, IP.

Execution of those test cases against products (e.g. phones, mobile phones, service enablers or network elements) is used to verify that the protocol implementation in those products meet the requirements defined by telecommunication standards.

TTCN is often combined with ASN.1.

Example code

This is an example of the famous Hello World program in TTCN-3.

 module HelloWorld {
   control {
     log("Hello, world!");
   }
 }

Versions

  • TTCN-1: First version of TTCN, not widely used.
  • TTCN-2: Second version of TTCN version, adding concurrency and multiple modules support to TTCN-1, today widely used.
  • TTCN-3: Third and current version of TTCN.

Background information

Conformance testing means a test execution against a well-defined test case, e.g. a test written in TTCN. Plug-tests, also called interoperability testing, are test cases executed with a client - server model; e.g. Mail-Client against Mail-server, phone against network, Bluetooth headset against Bluetooth phone. Plug-tests are e.g. often executed at so-called unplug-tests.

Internet standards such as IETF use mainly so called plug-tests for test execution.[citation needed]

Conformance-tests and plug-tests complement each other. If properly done, interoperability errors found with plug-tests should lead to definition of new conformance test cases that cover the failed test.