TTCN-3 is easy to learn
The standardized testing language has the look and feel of a regular programming language but without the complexity that such languages often introduce as it concentrates exclusively on testing.
There are many tutorial and courses to learn TTCN-3, as well as a certification program. The standard itself provides examples that demonstrate the usage of the specific features of the language.
The aim of TTCN-3 is to provide a well-defined syntax for the definition of tests independent of any application domain. The abstract nature of a TTCN-3 test system makes it possible to adapt a test system to any test environment. This separation significantly reduces the effort required for maintenance allows experts to concentrate on what to test and not on how.
The TTCN-3 language comprises:
- A well-defined static and operational semantics
- A rich type system
- A powerful built-in matching mechanism and matching expressions
- Snapshot semantics that ensure and preserve the order of external event arrival
- The ability to define tests with multiple test components
- Support for message-based as well as procedure-based communication paradigms
- Support for dynamic test configurations with test components that can be (re)created and (re)connected on-the-fly
- The ability to specify execution parameters at runtime to ease re-targeting of test suite execution in different testing environments
- Support for timers
- The ability to automate test execution driven by external sources using the TTCN-3 Test Management interface (TCI-TM)
TTCN-3 is internationally standardized
TTCN-3 was created by leading experts from industry and academia at the European Telecommunications Standards Institute (ETSI).
The standards address not only the language for specifying tests but also the interfaces that control and adapt a test to any given environment. The standardization of TTCN-3 means that users are not forced to rely on the use of one proprietary tool.
The TTCN-3 approach to testing is extremely flexible
- The language is completely independent of technology, operating system and implementation domain
-
There are no practical limits to the extent that tests or test systems can be adapted to users' needs
- Test systems can be integrated easily with the most appropriate test execution management software using TCI Test Management interface (TCI-TM)
- Test execution traces can be visualized in any suitable format using the TCI Test Logging interface (TCI-TL)
- Any encoding scheme can be implemented and integrated using the TCI Codec and value APIs
- Test systems can be adapted to any communication mechanism using the TTCN-3 Runtime Interface (TRI) System Adapter
- Test systems can be adapted to any timing model using the TTCN-3 Runtime Interface (TRI) Platform Adapter
-
It is scalable
- Adaptations can be configured to the current needs while the test scripts remain unchanged and can be used in different development phases
- Test components can be added to existing test cases to test new interfaces of the SUT
- Test components can be used both to test and to emulate interfaces
-
Extensible
- Standardized mappings to other external type systems available such as ASN.1 and XML
- Integration of external functionality is possible using the TRI Platform Adapter
- Multiple presentation formats are available - textual and graphical
TTCN-3 can be used in many types of testing
It can be used for:
- Valid, invalid and inopportune testing
- Software module, unit, layer, protocol, integration and laboratory testing,
- Functional, load, distributed and testing
- Regression, certification and approval testing