Grundfunktionalität von TESSY

Das Testtool TESSY testet Programme, die in C oder C++ geschrieben sind. Für Programme, die in der Programmiersprache C geschrieben sind, ist eine Unit eine Funktion im Sinne von C. Um Unit-Tests mit TESSY zu starten, suchen Sie nach dem C-Quellmodul, das die zu testende Funktion enthält. TESSY analysiert dieses Quellmodul und listet die darin enthaltenen C-Funktionen auf. Sie können die Funktion auswählen, die Sie testen möchten.

Analyse der Schnittstelle

TESSY analysiert die Schnittstelle dieser Funktion und ermittelt welche Variablen von dieser Funktion verwendet werden und ob es sich um Eingabe- oder Ausgabevariablen oder um beides handelt. TESSY zeigt seine Ergebnisse im Test Interface Editor (TIE) an, wo sie bei Bedarf geändert werden können.

Test Interface Editor
Der Test Interface Editor (TIE) zeigt die Schnittstelle an.

Testdatenerfassung

Der nächste Schritt ist die Definition der Testdaten. Die Testdaten eines Testfalls bestehen aus den Werten für die Eingabevariablen der zu testenden Funktion und den zu diesen Eingabewerten gehörenden erwarteten Ausgabewerten (d.h. den Ergebnissen). Die Testdaten werden in der Perspektive Test Data Editor (TDE) eingegeben. Die TDE-Perspektive speichert die Testdaten in einer Datenbank.

Testdatenerfassung

Generierung der Testanwendung

Um dynamische Tests durchführen zu können, muss TESSY zunächst einen Testtreiber generieren. Der Testtreiber wird benötigt, um die zu testende Funktion aufzurufen. TESSY generiert den Treiber automatisch. Der Testtreiber und die zu testende Funktion bilden zusammen eine eigenständige (eingebettete) Testanwendung, einschließlich des Startcodes. Wenn die zu testende Funktion externe Variablen verwendet, die nicht definiert sind, kann der von TESSY generierte Testtreiber diese Variablen im Testtreiber definieren. Wenn die zu testende Funktion selbst andere Funktionen (Subroutinen) aufruft, kann TESSY mit dem Testtreiber Ersatzfunktionen (Stubs) für die fehlenden Subroutinen bereitstellen. TESSY bietet zwei Arten von Stub-Funktionen an:

  1. Stub-Funktionen, für die Sie den C-Quellcode für den Body der Stub-Funktion bereitstellen können, und
  2. Stub-Funktionen, für die TESSY prüfen kann, ob der erwartete Wert für einen an die Stub-Funktion übergebenen Parameter der tatsächliche Wert ist, und für die TESSY jeden vom Benutzer angegebenen Wert als Rückgabewert der Stub-Funktion bereitstellen kann.

Der Testtreiber, die zu testende Funktion, die Stub-Funktionen und alles andere werden von TESSY automatisch mit einem geeigneten Compiler für die jeweils verwendete eingebettete Microcontroller-Architektur kompiliert und gelinkt.

Ausführen eines Tests

Anschließend führt TESSY die Testanwendung auf dem Zielsystem aus, z.B. mit Hilfe eines eigenständigen In-Circuit-Emulators oder einer sonstigen Verbindung zur realen Zielhardware. TESSY überträgt die Eingabewerte jedes Testfalls an das Zielsystem und führt die zu testende Funktion mit diesen Werten aus. Am Ende der Ausführung der zu testenden Funktion ermittelt TESSY die Ausgabewerte und überprüft, ob sie den erwarteten Ergebnissen entsprechen, die zuvor für diesen Testfall spezifiziert wurden. Testwerte für nachfolgende Testläufe werden der Testdatenbank entnommen und sind nicht in die Testanwendung enthalten. Die Anzahl der Testfälle ist daher prinzipiell unbegrenzt.

Testauswertung

Testauswertungen werden farblich dargestellt: Tests, die die erwarteten Ergebnisse geliefert haben, werden grün markiert, Tests, die nicht die erwarteten Ergebnisse geliefert haben, werden rot markiert. Noch nicht ausgeführte Testfälle oder Testfälle, deren Auswertung ungültig geworden ist, werden gelb markiert.

TESSY Testauswertung

Testberichte

TESSY generiert umfassende Berichte über die Ergebnisse der Testfälle in wählbaren Detaillierungsgraden. Selbstverständlich geben diese Berichte auch Auskunft darüber, ob die Ausführung eines Testfalls das erwartete Ergebnis erbracht hat.

TESSY Testberichte

Erweiterte Unterstützung für C++ Stubbing

Der integrierte Link-Stubber von TESSY ermöglicht einfaches automatisches Stubbing externer C++-Klassen und -Methoden und gewährleistet so eine erfolgreiche Verlinkung des Test-Treibers auch in komplexen C++-Umgebungen.

ASCII based database backup files

Das YAML-basierte Datenbank-Sicherungsformat erleichtert die Versionskontrolle von Tests. Alle Informationen liegen in ASCII-Dateien vor, was einen einfachen Vergleich und das Zusammenführen verschiedener Entwicklungszweige ermöglicht.

Für jedes Modul werden die folgenden Dateien gespeichert:

  • TESSY-Skriptdateien, die Testdaten und Benutzercode für jedes Testobjekt enthalten
  • YML-Datei mit Metainformationen zum Modul
  • Zusätzlich wird eine IDB-Datei gespeichert, die spezifische Einstellungen der Testschnittstelle enthält, die für die Wiederherstellung aller erforderlichen Schnittstelleneinstellungen aus der Sicherung unerlässlich sind.
Screenshot: Tasks des ASCII-Moduls im Unit-Test-Tool TESSY

Unit-Test Training

Format: Online-Schulung
Datum: 23. - 27. November 2026
Dauer: 5 Tage, jeweils von 8:30 Uhr – 13 Uhr.
Kurssprache: Englisch (Präsentationsfolien auf Englisch)
Preis: 1,980.00 EUR (Frühbucher-Rabatt 100,- EUR)
 

Another Unit-Test online training in English will be held from October 19 - 23, 2026.

23.
11.2026
27.
11.2026