TTCN-3

TTCN-3

TTCN-3, kurz für Testing and Test Control Notation, ist eine standardisierte, speziell für Testlösungen entwickelte Programmiersprache, die vornehmlich für die Automatisierung von Tests für kommunikationsbasierte Systeme verwendet wird. TTCN-3 wird beispielsweise für das Testen von Kommunikationsprotokollen und deren Schnittstellen eingesetzt. Außerdem wird es für das Testen von eingebetteten Systemen verwendet. TTCN-3 dient ebenso zur Spezifikation und Dokumentation von Testabläufen.

Die Vorgänger TTCN und TTCN-2 standen noch für Tree and Tabular Combined Notation.

Inhaltsverzeichnis

Standardisierungsgremien

Herausgeber des Standards sind ETSI und ITU-T.

Typische Anwender

3GPP, TETRA Association, IMS Forum, WiMAX Forum, AUTOSAR, MOST Cooperation, OMA

Eigenschaften

Abstraktion

TTCN-3 ist eine abstrakte Testsprache, die verschiedene Repräsentationen unterstützt:

  • textuelle Repräsentation (Core Notation)
  • grafische Repräsentation (Graphical Format, GFT)

Die Repräsentationen von TTCN-3 sind gleichwertig. Außerdem besteht ein standardisiertes Mapping zwischen den einzelnen Repräsentationsarten.

Erweiterbarkeit

Ein herausragendes Merkmal von TTCN-3 ist seine Erweiterbarkeit und mögliche Integrationen wie:

  • Einbindung externer Datendefinitionen (ASN.1, IDL, XML und WSDL)
  • Einbindung externer Funktionen (Java, C)
  • Adaption für das System Under Test (Testadapter/Codec)

Standardisierte Schnittstellen: TCI und TRI

Zusätzlich zum textuellen und grafischen Repräsentationsformat beinhaltet TTCN-3 die standardisierten Schnittstellen TRI (TTCN-3 Runtime Interface) und TCI (TTCN-3 Control Interface).

  • TRI – Adaption der abstrakten TTCN-3 Core Notation an das reale System unter Test
  • TCI – Anbindung der TTCN-3 Core Notation an die Testplattform und das Text Management System (GUI, Comandline Version). Weiterhin wird die Spezifikation der Codierung und Logausgaben des Testflows vorgenommen.

Werkzeuge zu TTCN-3

Für die Ausführung von Testfällen, die in TTCN-3 spezifiziert sind, werden ein Compiler sowie ein Laufzeitsystem benötigt. Diese werden von verschiedenen Herstellern angeboten:

  • Testing Technologies → TTworkbench
  • OpenTTCN → OpenTTCN Tester
  • Elvior → TestCast

TTthree

TTthree ist ein Compiler, der Anfang 2000 als Gemeinschaftsentwicklung der Arbeitsgruppe ÜBB der Technischen Universität Berlin und des Forschungsinstituts Fraunhofer Fokus entwickelt wurde. 2001 war TTthree der erste lauffähige TTCN-3-Compiler bei ETSI. Die Weiterentwicklung dieses Compilers sowie dessen Integration in ein IDE (Integration Development Environment) erfolgte anschließend bei der in Berlin ansässigen Ausgründung Testing Technologies IST GmbH, die als Überbau des reinen Compilers die TTworkbench entwickelte. TTthree ist lizenzrechtlich nur in Kombination mit der TTworkbench erhältlich.

TTworkbench

Die von Testing Technologies entwickelte TTworkbench ist eine integrierte Testentwicklungs- und Testausführungsumgebung basierend auf TTCN-3 und Eclipse IDE.

Lizenz

Die TTworkbench wird kommerziell von Testing Technologies lizenziert.

Aufbau

Die Anbindung der Oberfläche an den Compiler wird in einer Client-Server-Architektur realisiert; diese eher ungewöhnliche Methode der Interprozesskommunikation mit einem Compiler wurde gewählt, weil in der Frühphase der Entwicklung der Sprache TTCN-3 vielfach große Testreihen automatisiert aus der Vorgängerversion TTCN-2 übersetzt wurden und damit keine Aufteilung in verschiedene Module vorhanden war. Durch die Delegierung der Compile-Aufträge an einen Compiler-Server erhoffte man sich Perfomanzgewinne durch Caching-Mechanismen. Die Kommunikation zwischen der Oberfläche und dem Compiler erfolgt über binär codiertes XML.

Inzwischen sind die meisten Testreihen entweder manuell in sinnvolle Module strukturiert oder als Neuentwicklung gleich modular konzipiert worden, sodass der Punkt des Client-Server-Compilers wieder in den Hintergrund getreten ist.

TTCN-3 Editor

Die Konzipierung von TTCN-3 als abstrakte Sprache, die mehrere gleichwertige Repräsentationen kennt, wird in der TTworkbench umgesetzt, indem Testfälle sowohl in der textuellen als auch in der grafischen Darstellung (GFT) editiert werden können.

Datentypen können aus einer Reihe von Sprachen importiert werden, beispielsweise aus ASN.1, XSD, WSDL und IDL, sodass in diesem Fall auf eine textuelle Darstellung in TTCN-3 weitgehend verzichtet werden kann.

Verteiltes Testen durch TTmex

Die Laufzeitumgebung (Test Executable, TE), in der die in TTCN-3 spezifizierten Testfälle (Test Cases) tatsächlich abgearbeitet werden, kann bei der TTworkbench entweder lokal (das heißt auf demselben Rechner) gestartet werden, oder verteilt auf verschiedenen Rechnern zum Einsatz kommen. Durch die Parallelität kann die Gesamttestzeit erheblich reduziert werden. Die TTworkbench unterstützt das verteilte Testen mit Hilfe des TTmex-Plugins.

Integration in Eclipse

Die Hauptaufgabe von TTCN-3 besteht darin, in beliebigen Sprachen implementierte Protokolle und Anwendungen zu testen. Oft werden daher Programmteile, die in anderen Sprachen geschrieben sind, im Zusammenhang mit TTCN-3 eingesetzt. Die TTworkbench ist daher auf Eclipse basiert, das mit seinen Sichten und Perspektiven eine erweiterbare Plattform darstellt, um mehrere Sprachen und Anwendungen zu kombinieren.

Java

Die TTworkbench ist in Java implementiert, was durch die Integration in Eclipse nahegelegt ist. Auch die in TTCN-3 spezifizierten Testfälle werden in Java (das heißt in JAR-Dateien) übersetzt und als solche in der Laufzeitumgebung abgearbeitet.

Erweiterbarkeit

Einige übliche Plugins
ASN.1, FTP, GPIB, IDL, MOST, RS232, Telnet, TTmex, UDP, WSDL

Die TTworkbench realisiert eine Reihe ihrer Features durch ein Plugin-Konzept, zum Beispiel für weitere externe Sprachen oder Protokolle. Oft werden durch diese Plugins Möglichkeiten zum Import von Datentypen aus diesen Sprachen eröffnet. In der TTworkbench ist dieses Architekturkonzept der Rich Client Platform (RCP, seit Eclipse Version 3.0) konsequent umgesetzt, daher wird auch die Kernsprache, TTCN-3, erst durch ein Plugin verfügbar.

Anwender haben die Möglichkeit, eigene Plugins zu schreiben und einzubinden, etwa um den Aufruf von externen Funktionen von den in TTCN-3 spezifizierten Testfällen aus zu ermöglichen oder um spezielle Codecs einzubinden. Ebenso sind die (im Standard von TTCN-3 spezifizierten) Test-Adapter als Plugins realisiert.

Testkampagnen und Reporte

Wenn ein Hersteller ein Protokoll mit Hilfe von Testfällen spezifiziert, die in TTCN-3 geschrieben sind, dann stellt diese Liste von Testfällen zwar eine Testreihe dar, doch ist diese in der Praxis oft zu umfangreich und zu wenig gegliedert, um direkte Anwendung zu finden. Ein schlichtes Abarbeiten aller Testfälle dauert in der Regel zu lange und verlangt zu viel Vorbereitung, oft von entsprechender zu testender Hardware.

Die von der ETSI für TTCN-3 spezifizierten Testfälle (Test Cases) werden daher in der TTworkbench um das Konzept von Testkampagnen (Test Campaigns) und Metakampagnen (Meta Campaigns) erweitert. Mit Hilfe dieser Mittel lassen sich große Test-Suites zur Abarbeitung in der Laufzeitumgebung abbilden und gliedern.

Testkampagnen können vom Tester erstellt werden und stellen dabei Listen von zur konkreten Ausführung vorgesehenen Testfällen dar; einzelne Testfälle können hierbei noch parametrisiert werden. Ebenso kann eine Anzahl der Durchläufe für die einzelnen Testfälle festgelegt werden. Metakampagnen hingegen stellen Listen von Testkampagnen dar, die zur konkreten Ausführung vorgesehen sind.

Aus gelaufenen Testkampagnen und Metakampagnen und den dabei entstandenen Log-Dateien lassen sich in der TTworkbench Reports generieren. Diese Reporte können beispielsweise in HTML ausgegeben werden.

Verbreitung

Die TTworkbench hat nach Herstellerangaben einen Marktanteil von 30 bis 50 Prozent für automatisiertes Testen mittels TTCN-3. Einige tausend Lizenzen befinden sich im Umlauf; Universitäten und Forschungseinrichtungen können unter Umständen eine kostenlose Lizenz erhalten. Das Produkt wird monatlich mehrere Hundertmal heruntergeladen.

TTCN-3 Training

Alle Anbieter von TTCN-3 basierten Werkzeugen bieten zur Testsprache sowie zum Werkzeug ein individuelles Training an, wobei Testing Technologies der erste akkreditierte Trainingsanbieter ist. Das akkreditierte Training setzt sich systematisch mit allen zehn Teilen des TTCN-3 Standards auseinander. Hierbei werden nicht nur theoretische Aspekte durchleuchtet, sondern die Teilnehmer werden durch verschiedene praktische Übungen geführt. Dazu gehört die Entwicklung mehrerer Testfälle von Scratch bis zur Ausführung gegen ein System Under Test.

ISQI führt anschließend eine Prüfung zum Certified TTCN-3 Tester durch.

Weblinks

Unternehmen:

Zu den Werkzeugen:

Einzelnachweise


Wikimedia Foundation.

Игры ⚽ Нужно решить контрольную?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • TTCN — is a programming language dedicated to testing of communication protocols and web services. A TTCN Test Suite consists of many test cases written in TTCN.Up to version 2 the language is unconventionally written in tables and called Tree and… …   Wikipedia

  • TTCN-3 — (Testing and Test Control Notation version 3) is a strongly typed test scripting language used in conformance testing of communicating systems and a specification of test infrastructure interfaces that glue abstract test scripts with concrete… …   Wikipedia

  • TTCN — est un langage de programmation pour les tests des protocoles de communication. Une suite de tests TTCN consiste en un grand nombre de scénarios de test écrits en TTCN. Jusqu à la version 2, le langage est écrit d une manière non conventionnelle… …   Wikipédia en Français

  • TTCN — ist eine Sprache zum Testen von Kommunikationsprotokollen. Sie wird von der ITU T gepflegt und in deren Empfehlungen (Recommendations) standardisiert. Der aktuelle Standard ist zwar TTCN 3, doch wird in der Industrie vielfach noch TTCN 2… …   Deutsch Wikipedia

  • TTCN-3 — Содержание 1 Приложения 2 Архитектура 3 Терминология …   Википедия

  • TTCN — Содержание 1 Приложения 2 Архитектура 3 Терминология 4 Внешние ссылки …   Википедия

  • TTCN — Tree and Tabular Combined Notation ISO Testspezifikationssprache …   Acronyms

  • TTCN — Tree and Tabular Combined Notation ISO Testspezifikationssprache …   Acronyms von A bis Z

  • TTCN — abbr. the Tree and Tabular Combined Notation (OSI, IUT) comp. abbr. Tree and Tabular Combined Notation …   United dictionary of abbreviations and acronyms

  • TTthree — TTCN 3, kurz für Testing and Test Control Notation, ist eine genormte, speziell für Testlösungen entwickelte Programmiersprache, die vornehmlich für die Automatisierung von Tests für kommunikationsbasierte Systeme verwendet wird. TTCN 3 wird… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”