DE102004006089A1 - Testfälle für eine Testvorrichtung - Google Patents

Testfälle für eine Testvorrichtung Download PDF

Info

Publication number
DE102004006089A1
DE102004006089A1 DE200410006089 DE102004006089A DE102004006089A1 DE 102004006089 A1 DE102004006089 A1 DE 102004006089A1 DE 200410006089 DE200410006089 DE 200410006089 DE 102004006089 A DE102004006089 A DE 102004006089A DE 102004006089 A1 DE102004006089 A1 DE 102004006089A1
Authority
DE
Germany
Prior art keywords
test
test cases
variable
technical system
variables
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE200410006089
Other languages
English (en)
Inventor
Kiriakos Dipl.-Ing. Athanasas
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mercedes Benz Group AG
Original Assignee
DaimlerChrysler AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by DaimlerChrysler AG filed Critical DaimlerChrysler AG
Priority to DE200410006089 priority Critical patent/DE102004006089A1/de
Publication of DE102004006089A1 publication Critical patent/DE102004006089A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Die Erfindung betrifft Testfälle zum automatischen Testen eines durch Variablen gekennzeichneten technischen Systems (3). Jeder der Testfälle umfaßt eine Anweisung, die eine Variable des technischen Systems (3) verändert. Die Anweisung legt entweder fest, auf welchen Wert diese Variable bei Ausführung des Testfalls gesetzt wird oder enthält eine logische Auswahlbedingung, einen ersten und einen zweiten Wert. Die betreffende Variable wird auf den ersten Wert gesetzt, wenn die logische Auswahlbedingung erfüllt ist, ansonsten auf den zweiten Wert. Weiterhin umfaßt jeder Testfall eine logische Abbruchbedingung, eine Festlegung, welches Ergebnis der Testfall liefert, wenn die Abbruchbedingung erfüllt ist, eine Maximal-Zeitspanne für dessen Ausführung sowie ein Ergebnis, das der Testfall liefert, wenn die Maximal-Zeitspanne ohne Erfülltsein der Abbruchbedingung verstreicht. Die Testfälle sind vorzugsweise in einem Datenspeicher (8) eines Testplaners (9) abgespeichert, der Testfälle auswählt und an einen Testausführer (1) übermittelt, der mit dem zu testenden System (3) verbunden ist.

Description

  • Die Erfindung betrifft Testfälle zum automatischen Testen eines durch Variablen gekennzeichneten technischen Systems nach dem Oberbegriff des Anspruchs 1.
  • Testfälle, welche die Merkmale des Oberbegriffs von Anspruch 1 aufweist, ist aus J. Grabowski & M. Schmitt: „TTCN-3 – Eine Sprache für die Spezifikation und Implementierung von Testfällen", Automatisierungstechnik 50 (2003) Heft 3, S. A5 – A8 bekannt. TTCN bedeutet „Testing and Test Control Notation". Die Testfälle werden in Form von ausführbaren Programmen beschrieben. Vorgesehen ist, daß bei der Ausführung eines Testfalls das Programm, das den Testfall beschreibt, mindestens ein anderes Programm aufruft und das Ergebnis des Programmaufrufs in einer Programm-Variablen abspeichert. Vorgesehen sein kann weiterhin eine logische Abbruchbedingung sowie eine Festlegung des Ergebnisses, das der Testfall bei Erfülltsein der Abbruchbedingung liefert und das vom Ergebnis vom Aufrufen anderer Testfälle abhängen kann. Zwei mögliche Ergebnisse sind „Testfall erfolgreich" und „Testfall fehlgeschlagen".
  • Die Syntax von TTCN-3 ist relativ kompliziert. Beim Formulieren von Testfällen sind Wechselwirkungen zwischen verschiedenen Testfällen zu berücksichtigen.
  • Aus DE 10055679 A1 sind Testfälle für Testszenarien bekannt. Ein Testszenario beschreibt ein bestimmtes Verhalten der Umgebung des zu testenden Systems und ist aus einzelnen Testschritten aufgebaut. Jeder Testschritt definiert einen Eingabevektor für einen bestimmten Zeitpunkt, der die Umgebung in einen bestimmten Zustand versetzt. Die Testschritte werden systematisch in einem Klassifikationsbaum strukturiert und dargestellt. Sie beschreiben Stimuli, die mit beliebigen Zuständen und in beliebiger Reihenfolge aktiviert werden können.
  • Der Erfindung liegt die Aufgabe zugrunde, Testfälle nach dem Oberbegriff des Anspruchs 1 zu schaffen, die einfach und übersichtlich strukturiert sind und flexibel an viele Testsituationen anpaßbar sind.
  • Die Aufgabe wird durch Testfälle nach Anspruch 1 gelöst. Vorteilhafte Ausgestaltungen sind in den Unteransprüchen angegeben.
  • Jeder der Testfälle umfaßt mindestens eine Anweisung. Die mindestens eine Anweisung verändert eine Variable des technischen Systems. Die Anweisung legt entweder fest, auf welchen Wert die betreffende Variable bei Ausführung des Testfalls gesetzt wird. Oder sie enthält eine logische Auswahlbedingung, einen ersten und einen zweiten Wert. Die logische Auswahlbedingung hängt von einer Variablen des technischen Systems ab. Bei Ausführung des Testfalls wird geprüft, ob die logische Auswahlbedingung erfüllt ist. Die betreffende Variable wird dann auf den ersten Wert gesetzt, wenn die logische Auswahlbedingung erfüllt ist, ansonsten auf den zweiten Wert.
  • Weiterhin umfaßt jeder Testfall eine logische Abbruchbedingung, die von mindestens einer Variablen des technischen Systems abhängt, und eine Festlegung, welches Ergebnis der Testfall liefert, wenn die Abbruchbedingung erfüllt ist. Für jeden Testfall ist eine Maximal-Zeitspanne für dessen Ausführung festgelegt. Weiterhin ist ein Ergebnis festgelegt, das der Testfall liefert, wenn die Maximal-Zeitspanne ohne Erfülltsein der Abbruchbedingung verstreicht.
  • Die Testfälle sind einfach und übersichtlich strukturiert. Sie lassen sich von einem Gerät, das die Testfälle ausführt, schnell ausführen. Die einfache Strukturierung reduziert die Gefahr, daß beim Erzeugen oder Verändern von Testfällen Fehler gemacht werden, z. B. weil Seiteneffekte und Nebenwirkungen nicht beachtet werden. Andererseits sind die Testfälle so flexibel strukturiert, daß sich Testfälle für viele verschiedene Testsituationen erzeugen lassen.
  • Die Anweisung eines Testfalls kann einen konstanten Wert festlegen, welcher der betreffenden Variablen bei Ausführung des Testfalls zugewiesen wird. Vorzugsweise (Anspruch 2) umfaßt wenigstens eine Anweisung statt dessen eine Berechnungsvorschrift. Diese Vorschrift hängt von einer Variablen des technischen Systems ab. Sie wird bei Ausführung des Testfalls ausgeführt und liefert den Wert, auf den die Variable des Testfalls eingestellt wird.
  • Im Folgenden wird ein Ausführungsbeispiel der Erfindung anhand der beiliegenden Zeichnung näher beschrieben. Dabei zeigt.
  • 1. die Architektur einer Vorrichtung zum Testen mit den erfindungsgemäßen Testfällen.
  • Im Ausführungsbeispiel ist das zu testende technische System ein Teilsystem 3 eines Kraftfahrzeuges, z. B. ein elektronisches Steuergerät. Zum Testen wird ein Testausführer 1 verwendet, das ist ein Gerät, das eine Hardware-Schnittstelle 2 besitzt, die über einen Datenbus 19 mit dem zu testenden Steuergerät 3 über dessen Hardware-Schnittstellen 4 verbunden ist. Beispiele für die Datenformate derartiger Hardware-Schnittstellen sind Datenbus-Formate, z. B. CAN, MOST, LIN, sowie digitale und analoge Datenformate. Die Schnittstelle kann Analog-/Digital-Wandler und/oder Digital-/Analog-Wandler umfassen. Damit wird ein Testen nach dem Prinzip „hardware in the loop" (HIL) realisiert.
  • Der Testausführer 1 ist weiterhin über einen Datenbus 10, vorzugsweise einem Ethernet-Datenbus, mit einer Testumgebung 7 verbunden. Diese Testumgebung 7 umfaßt eine Datenverarbeitungseinrichtung und einen auf dieser Datenverarbeitungseinrichtung ablaufenden Simulator. Die Testumgebung 7 simuliert die Umgebung des zu testenden Steuergeräts 3, z. B. die vom Steuergerät 3 überwachten und geregelten weiteren Teilsysteme des Kraftfahrzeugs oder die Umgebung des Kraftfahrzeugs oder einen Fahrer, der Stelleingriffe am Kraftfahrzeug vornimmt. Die Testumgebung 7 fungiert als Widerpart des zu testenden Steuergeräts 3 und löst z. B. Ereignisse aus, die das zu testende Steuergerät 3 erkennen und darauf adäquat reagieren soll. Beim Test wird geprüft, ob das Steuergerät 3 tatsächlich so reagiert wie spezifiziert oder nicht.
  • Die Testfälle, mit denen das Steuergerät 3 des Kraftfahrzeugs getestet wird, sind in einem Datenspeicher 8 abgespeichert. Dieser Datenspeicher 8 für Testfälle umfaßt mindestens einer Datei, eine Datenbank oder eine andere Form eines Datenspeichers eines Arbeitsplatzrechners 11. Im Beispiel der 1 sind die Testfälle in Form einer Tabelle in einer Datei abgespeichert. Auf dem Arbeitsplatzrechner 11 ist weiterhin ein Softwaresystem abgespeichert. Dieses Softwaresystem, der Testplaner 9, hat Lesezugriff auf die Testfall-Datei 8 und ist mit dem Testausführer 1 über einen Datenbus 12 verbunden. Dieser Datenbus 12 ist vorzugsweise als Ethernet-Datenbus mit 100 MBit/sec realisiert. Der Testplaner 9 wählt automatisch einmal oder wiederholt Testfälle in der Testfall-Datei 8 aus, bringt die ausgewählten Testfälle in eine Reihenfolge, löst die Ausführung der Testfälle in dieser Reihenfolge aus und wertet die Ergebnisse aus. Als Testplaner 9 läßt sich z. B. „TestStand" verwenden, das unter http://www.ni.com/products beschrieben ist.
  • In einem Datenspeicher 17 sind Beschreibungen von Variable des Steuergeräts 3 abgespeichert. Welche Variablen im Datenspeicher 17 abgespeichert werden, wird durch die Hardware-Schnittstelle 2 des Testausführers 1 festgelegt. Die Testfälle, die der Testplaner 9 im Datenspeicher 8 ausgewählt hat, werden durch ein Umwandlungsprogramm 16 in die Form gebracht, in die der Testausführer 1 sie benötigt. Hierbei erzeugt das Umwandlungsprogramm 16 eine Ablaufbeschreibung des jeweils ausgewählten Test. Das Umwandlungsprogramm 16 liefert seine Ergebnisse an einen Steller 6. Dieser Steller 6 entscheidet, welche Variablen und sonstigen Größen beim Transfer zwischen der Testumgebung 7 und dem Multiplexer 5 verändert werden, und führt die Veränderung durch. Der Multiplexer 5 fungiert als Nachrichtenübermittlungskanal zwischen Testausführer 1 und Steuergerät 3 sowie zwischen Testausführer 1 und Testumgebung 7. Im Datenspeicher 17 für Variablenbeschreibungen ist festgelegt, wie diese Veränderung vorgenommen wird, z. B. durch Vorgabe von Ausgangs- und Ziel-Datenformat.
  • Welche Werte von im Datenspeicher 17 beschriebenen Variablen während der Testausführung gemessen oder berechnet werden, wird in einem Datenspeicher 18 für Variablenwerte abgespeichert. Dieser Datenspeicher 18 enthält den jeweils zuletzt gesetzten oder gemessenen Wert einer Variable. Der Testplaner 9 hat Lesezugriff auf diesen Datenspeicher 18 und wählt vorzugsweise Testfälle in Abhängigkeit von Variablenwerten, die im Datenspeicher 18 abgespeichert sind, aus. Umgekehrt wird im Datenspeicher 18 abgespeichert, welche Variablen bei der Testausführung auf welche Werte gesetzt worden sind. Um eine Variable auf einen Wert zu setzen, wird der Variablenwert durch das Umwandlungsprogramm 16 umgeformt und über den Multiplexer 5 an den Testausführer 1 gesandt. Dieser spricht über seine eigene Hardware-Schnittstelle 2 die Hardware-Schnittstelle 4 des zu testenden Steuergeräts 3 an, um die Variable zu setzen. Das Umwandlungsprogramm 16 wandelt die gemessenen Variablenwerte in die Form um, in der sie im Datenspeicher 18 abgespeichert werden.
  • Welche Werte von Variablen zu welchen Abtastzeitpunkten gemessen wurden, wird protokolliert und vom Testplaner 9 in einem Datenspeicher 15 für Betriebsprotokolle abgespeichert.
  • Wenigstens einige der Testfälle werden vorzugsweise automatisch erzeugt, vorzugsweise durch Analyse und Auswertung einer Spezifikation des Steuergeräts 3, z. B. durch das in DE 10055679 A1 offenbarte Verfahren. Die Vorrichtung umfaßt weiterhin eine Eingabeeinrichtung 14, um die automatisch erzeugten Testfälle zu überprüfen und bei Bedarf zu ändern sowie um manuell Testfälle zu ergänzen. Diese Eingabeeinrichtung 14 umfaßt eine Tastatur, eine DV-Maus sowie einen Bildschirm und eine Recheneinheit. Sie hat Schreibzugriff auf den Datenspeicher 8 für Testfälle. Falls dieser Datenspeicher 8 die Form einer Tabelle hat, umfaßt die Eingabeeinrichtung 14 vorzugsweise ein Tabellenkalkulationsprogramm.
  • Wie oben beschrieben, werden die Testfälle mit Hilfe einer Testumgebung 7 ausgeführt. Diese Testumgebung 7 umfaßt einen Simulator für die Umgebung des zu testenden Steuergeräts 3. Die Testfälle werden durch die folgende Abfolge ausgeführt:
    • – Die Testumgebung 7 mit dem Simulator wird gestartet und mit dem Testausführer 1 und dem zu testenden Steuergerät 3 synchronisiert.
    • – Nach Abschluß der Synchronisation wird eine Systemuhr 13 vorzugsweise auf dem Testausführer 1 gestartet. Diese Systemuhr 13 mißt das Verstreichen einer vorgegebenen Start- Zeitspanne. Danach wird die Ausführung von Testfällen begonnen.
    • – Der Testplaner 9 wählt Testfälle in der Datei 8 aus und löst deren Ausführung aus.
    • – Die Ausführung eines Testfalls wird beendet, wenn eine ihm zugeordnete logische Abbruchbedingung erfüllt ist oder wenn eine für den Testfall vorgegebene maximale Ausführungs-Zeitspanne verstrichen ist.
    • – Protokolliert wird jeweils das Ergebnis, das die Ausführung des Testfalls erbringt. Der Testplaner 9 schreibt die protokollierten Ergebnisse in den Protokoll-Datenspeicher 15.
    • – Vorzugsweise wird zusätzlich der zeitliche Verlauf der Variablen, die dem Testfall zugeordnet sind, abgetastet, protokolliert und ebenfalls im Datenspeicher 15 abgespeichert. Der protokollierte und im Datenspeicher 15 abgespeicherte Verlauf wird vorzugsweise z. B. in Form einer Tabelle oder Graph ausgegeben. In der Tabelle oder dem Graphen wird zwischen Eingangs- und Ausgangs-Variablen des Steuergeräts 3 unterschieden.
  • Die Testfälle zum Testen des Steuergeräts 3 sind gemäß einer Datenstruktur strukturiert. Eine Datenstruktur legt fest, wie Datenobjekte für eine bestimmte Anwendung strukturiert werden. Insbesondere legt die Datenstruktur fest, welche Attribute die gemäß der Datenstruktur strukturierten Datenobjekte haben. Zusätzlich kann die Datenstruktur festlegen, welche Typen von Datenobjekten es gibt und/oder welche Relationen zwischen Datenobjekten erzeugbar sind. Datenstrukturen werden z. B. zur Strukturierung und Organisation von Datenbanken und anderen Datenspeicherungssystemen verwendet. Vorzugsweise ist diese Datenstruktur gemeinsam mit den Testfällen in einem Datenspeicher oder in einer weiteren Datei abgespeichert. Dadurch wird es ermöglicht, automatisch zu testen, ob jeder Testfall tatsächlich gemäß der Datenstruktur strukturiert ist. Dies ist insbesondere dann vorteilhaft, wenn die Datenstruktur nachträglich geändert oder ergänzt wird und zu überprüfen ist, ob Testfälle auch noch mit der neuen Datenstruktur kompatibel sind.
  • Ein Beispiel für Testfälle bezieht sich auf den Fall, daß ein Steuergerät 3 eines Abstandsregelsystems getestet werden soll. Dieses Abstandsregelsystem soll sicherstellen, daß der Abstand zwischen zwei nacheinander in einer Kolonne fahrenden Fahrzeuge nie geringer als 10 m wird. In diesem Beispiel ist ein unerwünschtes Ereignis demnach "Abstand kleiner als 10 m". „Abstand" ist eine Variable des zu untersuchenden technischen Systems. Die logische Abbruchbedingung ist „Abstand < 10 m". Wird nämlich während der Ausführung der Testfälle festgestellt, daß der Abstand kleiner als 10 m ist und daher die Abbruchbedingung erfüllt ist, so hat das Abstandsregelsystem seine Aufgabe nicht korrekt erfüllt, und die weitere Ausführung des Testfalls wird abgebrochen. Der Abbruchbedingung „Abstand < 10 m" ist daher das Ergebnis „fehlgeschlagen" zugeordnet.
  • Wenn der Abstand größer als 10 m ist und ein Steuergerät im nachfolgenden Fahrzeug eine Notbremsung auslöst, so kann der Abstand nicht unter 10 m fallen. Im Falle einer Notbremsung wird daher die weitere Ausführung des Testfalls abgebrochen. Um dies zu bewirken, wird eine weitere logische Abbruchbedingung formuliert, nämlich „Notbremsung gleich 1". „Notbremsung" ist eine Variable des Steuergeräts 3, welche die Werte 0 und 1 annehmen kann. „Notbremsung gleich 1" bedeutet, daß die Notbremsung ausgelöst wurde. Dieser logischen Abbruchbedingung wird als Testergebnis „erfolgreich" zugeordnet. Denn das Steuergerät 3 hat sich so wie spezifiziert verhalten.
  • Die Start-Zeitspanne, die zwischen dem Abschluß des Synchronisierens und dem Zeitpunkt, an die Ausführung eines Testfalls beginnt, kann von Testfall zu Testfall variieren. Daher ist jedem Testfall eine Start-Zeitspanne zugeordnet, z. B. 10 sec oder 50 sec. Auch die maximale Ausführungs-Zeitspanne kann von Testfall zu Testfall variieren. Daher ist jedem Testfall eine maximale Ausführungs-Zeitspanne zugeordnet, z. B. 30 sec oder 40 sec oder 60 sec. Weiterhin ist festgelegt, welches Ergebnis der Testfall liefern soll, wenn die Ausführung nach dem Verstreichen dieser Ausführungs-Zeitspanne noch nicht beendet ist und daher abgebrochen wird. Vorzugsweise wird eines der möglichen Ergebnisse „erfolgreich" oder „fehlgeschlagen" zugeordnet. „Erfolgreich" bedeutet, daß das zu testende System sich so wie spezifiziert verhalten hat, „fehlgeschlagen" bedeutet, daß es sich anders als spezifiziert verhalten hat.
  • Jedem Testfall ist mindestens eine Anweisung zum Einstellen jeweils einer Variable zugeordnet. „Einstellen" einer Variable bedeutet, daß sie auf einen Wert gesetzt wird oder ihr ein neuer Wert zugewiesen wird, die Wertzuweisung also geändert wird. In einer Ausführungsform besteht eine solche Anweisung daraus, der Variablen eine Zahl zuzuweisen, z. B. der Variablen A die Zahl 10. Diese Zuweisung wird formalisiert als „A = 10". In einer anderen Ausführungsform besteht die Anweisung daraus, der Variablen das Ergebnis einer Berechnung zuzuweisen. In dieser Ausführungsform ist der Anweisung eine Berechnungs-Vorschrift zugeordnet, z. B. 10·sin(2·PI/T+t). Möglich sind auch bedingte Anweisungen der Form „WENN Auswahlbedingung DANN Wert-1 SONST Wert-2. Für Wert-1 und Wert-2 können Berechnungs-Vorschriften festgelegt sein. Zwei Beispiele für derartige bedingte Anweisungen sind: WENN A < (5·B + 2) DANN A = 10 SONST A = 10·B WEN B < C DANN A = 10 SONST A = 5
  • In den Berechnungs-Vorschriften können also andere Variablen auftreten.
  • Vorzugsweise lassen sich die Berechnungs-Vorschriften und logischen Auswahlbedingungen und Abbruchbedingungen mit Hilfe folgender Operatoren formulieren:
    • – Addition,
    • – Subtraktion,
    • – Multiplikation,
    • – Division,
    • – Rest modulo einer vorgegebenen Zahl,
    • – Inkrement-Bildung,
    • – Dekrement-Bildung,
    • – Exponential-Funktion,
    • – Logarithmus-Funktion,
    • – Trigonometrische Funktionen.
  • In logischen Auswahlbedingungen, logischen Abbruchbedingungen sowie in Berechnungs-Vorschriften können darüber hinaus die folgenden Vergleichs-Operationen auftreten:
    gleich,
    ungleich,
    größer als,
    kleiner als,
    größer gleich als,
    kleiner gleich als,
    logisches UND,
    logisches ODER.
  • Mit Hilfe dieser Operationen lassen sich Anweisungen zum Einstellen einer Variablen auf einen Wert formulieren, die z. B. folgendes bewirken:
    • – Wertzuweisung, z. B. zur Simulation eines Kurzschlusses oder einer Schalterstellung,
    • – wiederholte Zuweisung von Werten, die linear mit der Zeit ansteigen (Rampenfunktion),
    • – allgemeiner: wiederholte Zuweisung von zeitlich veränderlichen Werten (z. B. Parameter-Drift),
    • – zufälliges Zuweisen mit einem Zufallsgenerator, um ein verrauschtes Signal zu erzeugen,
    • – zeitlich kurzer Fehler-Impuls, z. B. Dirac-Impuls,
    • – wellenförmige Signale, z. B. Rechteck- oder Sinus-Signale oder Überlagerungen mehrerer elementarer Signale.
  • Mit einem Signal, das aus einer Überlagerung eines Rechteck- und eines Sinus-Signals resultiert, läßt sich z. B. die elektromagnetische Verträglichkeit eines Teilsystems eines Kraftfahrzeugs testen.
  • Zusätzlich kann eine Anweisung vorgesehen sein, die festlegt, daß eine tabellarische oder graphische Darstellung des zeitlichen Verlaufs von Variablen erzeugt werden soll. Die Anweisung legt fest, auf welche Variablen sich die Darstellung beziehen soll, sowie eine Zeitspanne relativ zum Zeitpunkt, an dem die Synchronisation abgeschlossen ist.
  • Mehrere Testfälle lassen sich zu einer Testfall-Abfolge zusammenfassen. Die Testfälle einer Abfolge werden stets gemeinsam und in der durch die Abfolge vorgegebenen Reihenfolge ausgeführt. Möglich ist, daß alle Testfälle einer Abfolge gleichzeitig begonnen werden. Möglich ist auch, daß Testfälle zeitlich versetzt begonnen werden.
  • Im folgenden werden zwei Testfälle durch eine formale, rechnerauswertbare Syntax beschrieben.
  • Der erste dieser beispielhaften Testfälle:
    • – FAIL: dist < 10
    • – T_Start: 50
    • – T_End: 60
    • – Result_t_End: PASS
    • – Anweisung_1: C = 10
    • – Anweisung_2: IF D < C THEN D = 10 ELSE D = C
  • Die logische Abbruchbedingung ist „dist < 10". In diesem Fall liefert der Testfall das Ergebnis „fehlgeschlagen" (FAIL). Der Testfall umfaßt zwei Anweisungen. Die zweiten Anweisung enthält eine logische Auswahlbedingung. Ist die Variable D kleiner als die Variable C, so wird der Variablen D der Wert 10 zugewiesen, ansonsten der aktuelle Wert von C. Die Ausführung dieses Testfalls wird 50 Sekunden nach Ende der Synchronisierung begonnen. Falls 60 Sekunden, nachdem die Ausführung des Testfalls begonnen wurde, also 110 Sekunden nach Ende der Synchronisierung, die Abbruchbedingung noch nicht erfüllt ist, so liefert der Testfall das Ergebnis „erfolgreich" (PASS).
  • Der zweite dieser Testfälle:
    • – FAIL: B >= 10·SIN (2·PI/D)
    • – PASS: Notbremsung == 1
    • – T_Start: 10
    • – T_End: 30
    • – Result_t_End: FAIL
    • – Anweisung_1: A = 5·t + B
    • – Anweisung_2: PLOT_Graph (A, B, D)
  • Die logische Abbruchbedingung ist erfüllt, wenn eine Notbremsung ausgelöst wurde. Dann ist das Testergebnis „erfolgreich". Die zweite Anweisung erzeugt eine graphische Darstellung des Verlaufs von A, B und D.
  • Vorzugsweise werden die Testfälle in einer Tabelle dargestellt. Jeder Testfall wird in einer Zeile angeordnet. Die Attribute (Start-Zeitspanne, maximale Ausführungs-Zeitspanne, Abbruchbedingungen und Ergebnisse bei Eintritt eines der Abbruchbedingungen, Anweisungen) stehen in den Spalten dieser Tabelle. Vorzugsweise steht jede Anweisung in einer Spalte, und je eine Spalte ist für die Zeitspannen, die Abbruchbedingungen, die Ergebnisse vorgesehen.
  • Beispielsweise lassen sich die Testfälle nach Start-Zeitspannen sortieren, was die Reihenfolge liefert, in der die Ausführung der Testfälle begonnen wird. Oder sie werden nach der maximalen Ausführungs-Zeitspanne sortiert, was zeigt, welcher Testfall spätestens zu welchem Zeitpunkt – relativ zur Synchronisierung – beendet ist. Möglich ist, in den Anweisungen nach dem Namen einer bestimmten Variablen A zu suchen, um zu ermitteln, durch welche Testfälle und Anweisungen A einen bestimmten Wert zugewiesen erhält oder der Wert von A verändert wird und welche anderen Testfälle und Variablen von A abhängen. Andere Testfälle hängen z. B. dadurch von A ab, daß in einer Berechnungsvorschrift, logischen Auswahlbedingung oder Abbruchbedingung A auftritt.
  • Bezugszeichenliste
    Figure 00130001
  • Figure 00140001

Claims (7)

  1. Testfälle zum automatischen Testen eines durch Variablen gekennzeichneten technischen Systems (3), die in einem Datenspeicher (8) einer Datenverarbeitungsanlage (11) abgespeichert sind, wobei jeder Testfall – mindestens eine Anweisung, die eine Variable des technischen Systems (3) betrifft, – eine logische Abbruchbedingung, die von mindestens einer Variablen des technischen Systems (3) abhängt, und – eine Festlegung, welches Ergebnis der Testfall liefert, wenn die Abbruchbedingung erfüllt ist, umfaßt, dadurch gekennzeichnet, daß jede Anweisung – festlegt, auf welchen Wert die betreffende Variable gesetzt wird, – oder eine logische Auswahlbedingung und einen ersten Wert festlegt, auf den die betreffende Variable bei Erfülltsein der Auswahlbedingung gesetzt wird, und ei nen zweiten Wert festlegt, auf den die betreffende Variable bei Nicht-Erfülltsein gesetzt wird, – wobei die logische Auswahlbedingung von einer Variablen des technischen Systems (3) abhängt, und für jeden Testfall – eine Maximal-Zeitspanne für dessen Ausführung und – ein Ergebnis, das der Testfall liefert, wenn die Maximal-Zeitspanne ohne Erfülltsein der Abbruchbedingung verstreicht, festgelegt sind.
  2. Testfälle nach Anspruch 1, dadurch gekennzeichnet, daß – mindestens eine Anweisung eine Vorschrift zur Berechnung des Wertes umfaßt, auf den die betreffende Variable gesetzt wird, – wobei die Berechnungs-Vorschrift von einer Variablen des technischen Systems (3) abhängt.
  3. Testfälle nach Anspruch 1 oder Anspruch 2, dadurch gekennzeichnet, daß die Variable, von der die Abbruchbedingung abhängt, das Vorliegen oder Nicht-Vorliegen eines im Betrieb des technischen Systems (3) unerwünschten Ereignisses betrifft.
  4. Testfälle nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß – einige der Testfälle als gemeinsam durchzuführende Testfälle gekennzeichnet sind – und für die gekennzeichneten Testfälle eine Ausführungs-Reihenfolge vorgegeben ist.
  5. Datenspeicher (8) mit Testfällen nach einem der Ansprüche 1 bis 4.
  6. Datenspeicher (8) nach Anspruch 5, dadurch gekennzeichnet, daß – der Datenspeicher (8) eine rechnerverfügbare Datenstruktur umfaßt – und die Testfälle gemäß dieser Datenstruktur strukturiert sind.
  7. Vorrichtung zum Testen eines technischen Systems (3) mit – einem Datenspeicher (8) gemäß Anspruch 5 oder Anspruch 6, – einer Datenverarbeitungs-Einrichtung (9), die zur Auswahl von im Datenspeicher (8) abgespeicherten Testfällen eingerichtet ist, – einer Datenverarbeitungs-Einrichtung (1), die zur Ausführung von ausgewählten Testfällen eingerichtet ist, und – einer Schnittstelle (2, 4) zum Abfragen der Werte von Variablen des technischen Systems (3) und zum Setzen von Variablen des technischen Systems (3) auf Werte.
DE200410006089 2004-02-07 2004-02-07 Testfälle für eine Testvorrichtung Withdrawn DE102004006089A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE200410006089 DE102004006089A1 (de) 2004-02-07 2004-02-07 Testfälle für eine Testvorrichtung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200410006089 DE102004006089A1 (de) 2004-02-07 2004-02-07 Testfälle für eine Testvorrichtung

Publications (1)

Publication Number Publication Date
DE102004006089A1 true DE102004006089A1 (de) 2005-09-01

Family

ID=34813184

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200410006089 Withdrawn DE102004006089A1 (de) 2004-02-07 2004-02-07 Testfälle für eine Testvorrichtung

Country Status (1)

Country Link
DE (1) DE102004006089A1 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007065571A1 (de) * 2005-12-09 2007-06-14 Abb Technology Ag System und verfahren zur automatischen prüfung von planungsergebnissen
US9626263B2 (en) 2013-10-28 2017-04-18 Dspace Digital Signal Processing And Control Engineering Gmbh Testing a control unit by means of a test environment
CN112526966A (zh) * 2020-11-20 2021-03-19 广西玉柴机器股份有限公司 一种控制器hil自动化测试方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10055679A1 (de) * 1999-11-03 2001-05-10 Daimler Chrysler Ag Verfahren, Computersystem und Computerprogramm-Produkte zur modellbasierten Generierung von Testszenarien
US20030208351A1 (en) * 2002-05-01 2003-11-06 Alan Hartman Model based test generation for validati on of parallel and concurrent software

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10055679A1 (de) * 1999-11-03 2001-05-10 Daimler Chrysler Ag Verfahren, Computersystem und Computerprogramm-Produkte zur modellbasierten Generierung von Testszenarien
US20030208351A1 (en) * 2002-05-01 2003-11-06 Alan Hartman Model based test generation for validati on of parallel and concurrent software

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GRABOWSKI J. et al: TTCN-3 - Eine Sprache für die Spezifikation und Implementierung von Testfällen. In: at - Automatisierungstechnik, Oldenbourg: Oldenbourg Verlag 2002, Jg. 50, Heft 3, S. A5-A8 *
GRABOWSKI, Jens; SCHMITT, Michael: TTCN-3 - Eine Sprache für die Spezifikation und Implementierung von Testfällen. In: at - Automatisierungstechnik, Oldenbourg: Oldenbourg Verlag 2002, Jg. 50, Heft 3, S. A5-A8

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007065571A1 (de) * 2005-12-09 2007-06-14 Abb Technology Ag System und verfahren zur automatischen prüfung von planungsergebnissen
DE102005058802A1 (de) * 2005-12-09 2007-06-14 Abb Technology Ag System und Verfahren zur automatischen Prüfung von Planungsergebnissen
CN101427253B (zh) * 2005-12-09 2013-05-22 Abb技术有限公司 用于自动测试规划结果的系统和方法
US9626263B2 (en) 2013-10-28 2017-04-18 Dspace Digital Signal Processing And Control Engineering Gmbh Testing a control unit by means of a test environment
CN112526966A (zh) * 2020-11-20 2021-03-19 广西玉柴机器股份有限公司 一种控制器hil自动化测试方法及系统
CN112526966B (zh) * 2020-11-20 2024-04-05 广西玉柴机器股份有限公司 一种控制器hil自动化测试方法及系统

Similar Documents

Publication Publication Date Title
DE69831732T2 (de) Verfahren und gerät zum korrigieren von fehlern in einem rechnersystem
EP1330685B1 (de) Prüfverfahren und prüfvorrichtung zur inbetriebnahme von mittels einer programmlogik gesteuerten systemen
DE3341766C2 (de) Verfahren und Vorrichtung zur Identifikation von Daten
EP3082000A1 (de) Verfahren und system zum testen eines mechatronischen systems
DE102004014290A1 (de) Verfahren zur Erstellung von Abläufen zum Testen einer Software
EP3306295B1 (de) Verfahren und vorrichtung zum testen elektronischer steuerungen, insbesondere zum testen von automobilsteuerungen
EP3620923B1 (de) Watchdog zur überwachung eines prozessors
EP3080668A1 (de) Verfahren zur beeinflussung eines steuerprogramms eines steuergeräts
DE69128908T2 (de) Verfahren zum Durchführen von erlässlichen Befehlen in einem Rechner
DE112011100168T5 (de) Erfassen von Diagnosedaten in einer Datenverarbeitungsumgebung
EP3401849A1 (de) Produktreifebestimmung eines technischen systems
DE102004006089A1 (de) Testfälle für eine Testvorrichtung
EP1745375A1 (de) Verfahren zur bestimmung von verklemmungen in nebenläufigen prozessen
EP0664905B1 (de) Verfahren zur durchfürhung von tests an auf einem rechner parallel ablauffähigen objekten eines objektorientierten programmes
EP1929402A2 (de) Verfahren und vorrichtung zur rechnergestützten analyse der zuverlässigkeit eines technischen systems
DE102008048862A1 (de) Testmodul und Verfahren zum Testen einer O/R-Abbildungs-Middleware
DE102020206327A1 (de) Verfahren und Vorrichtung zum Prüfen eines technischen Systems
DE102020102996A1 (de) Verfahren für einen integrierten Entwurf zur Modellierung, Simulation und Test einer Echtzeit-Architektur innerhalb einer modellbasierten System- und Softwareentwicklung
DE102016015755B4 (de) Verfahren zum Betrieb eines Watchdog umfassend eine Mustererkennung für wiederkehrende Lastsituationen mit einem zweistufigen Ergebnisspeicher
DE102016015756B4 (de) Verfahren zum Betrieb eines Watchdog umfassend eine Mustererkennung für wiederkehrende Lastsituationen mit zweifacher Bewertung
DE10325513B4 (de) Verfahren und Vorrichtung zum Erstellen eines Verhaltensaspekts einer Schaltung zur formalen Verifikation
DE102019216684B4 (de) Verfahren zur Timinganalyse von Anwendungssoftware für ein eingebettetes System, Vorrichtung zur Datenverarbeitung, Computerprogramm und computerlesbarer Datenträger
DE102022203166A1 (de) Verfahren zum Testen einer auf mehrere Programme verteilten Datenverarbeitung
DE102017112208A1 (de) Verfahren zur Übertragung von messtechnisch erfassten und digitalisierten Messdaten und zur Ausführung des Verfahrens geeignete Testvorrichtung
DE102004050293B3 (de) Verfahren zur Simulation des Betriebs eines Netzwerks

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: DAIMLERCHRYSLER AG, 70327 STUTTGART, DE

8127 New person/name/address of the applicant

Owner name: DAIMLER AG, 70327 STUTTGART, DE

8130 Withdrawal