Skip to main content

Registerkarte: Tabelleneditor

Die Registerkarte enthält eine Tabelle mit Testfällen, die jeweils aus Testschritten zusammengesetzt sind.

Testschritte

Ein Testschritt beinhaltet die eigentliche Prüfung eines Zustands. Im Testschritt werden Eingänge und Variablen des zu prüfenden Funktionsbausteins gesetzt und das Verhalten seiner Ausgänge geprüft. Für eine erfolgreiche Prüfung muss die definierte Bedingung über die gesamte Dauer des Prüfschritts erfüllt sein.

Name

Testschrittname

Wird automatisch beim Hinzufügen erzeugt

Beispiel: („Schritt1„, „Schritt2„, …)

Dauer

. Dauer des Testschritts
  • Einfach: Der Testschritt wird genau einen Zyklus lang ausgeführt. Dies ist die Standardeinstellung, wenn nicht explizit eine Dauer angegeben ist.

  • Zyklen: Anzahl von Zyklen, in denen der Testschritt ausgeführt wird

    Minimum ist 1 Zyklus, was der Option Einfach entspricht.

  • Zeit: Der Testschritt wird über die angegebene Zeitspanne ausgeführt. Beim ersten Zyklus wird ein Zeitstempel genommen und in jedem Folgezyklus mit der vorgegebenen Zeitspanne verglichen. Wenn bei dieser Prüfung die Zeit als überschritten erkannt wird, wird auf den nächsten Testschritt gewechselt. Der Zeitwert wird als TIME-Konstante angegeben (beispielsweise T#5s).

  • _cds_icon_three_dots.png: Öffnet den Dialog Benutzerdefinierte Bedingung für Dauer

Aufruf

standard icon: Der Testschritt wird einmal aufgerufen. Dies ist erforderlich, wenn in den Bedingungen des Testschritts ein Wert für eine Eingangsvariable definiert ist.

_cds_icon_option_deactivated.png: Der Testschritt wird nicht aufgerufen. Das kann notwendig sein, wenn der Aufruf das Testergebnis beeinflusst.

Ein Anwendungsfall für eine Deaktivierung ergibt sich, wenn es eine benutzerdefinierte Bedingung für die Dauer gibt. Beispielsweise wenn ein Funktionsbaustein geprüft werden soll, der nach dem CAA Behaviour Model entwickelt wurde. Eine mögliche Prüfung wäre, ob der Ausgang xBusy auf FALSE geht, sowie xDone TRUE wird. Dieser Fall kann in zwei Testschritten realisiert werden:

Schritt 1: Prüfung auf xBusy = TRUE mit einer benutzerdefinierten Dauer

Diese Dauer ist die Bedingung xDone = TRUE.

Schritt 2: Prüfung auf xBusy = FALSE ohne Aufruf

Hinweis: Bei einem erneuten Aufruf würde xBusy sofort TRUE werden.

<Variable 1>

Im einer Zeile können beliebig viele Spalten für im Testschritt zu schreibende und zu lesende Variablen angelegt werden. Diese Variablen sind typischerweise die Eingänge/Ausgänge des Prüflings, können aber auch andere Variablen sein (beispielsweise Systemzustände). Einen Eingang erkennt man in der Spalte am IEC-Zuweisungoperator :=, einen Ausgang an einem IEC-Vergleichoperator, beispielsweise =, < oder >.

Die Tabellenspalten für die einzelnen Funktionsbausteinvariablen können bereits beim Einfügen des Objekts Testtabelle angelegt worden sein. Die Spalten können jederzeit mit Hilfe des Dialogs Spalten editieren ergänzt, reduziert und bearbeitet werden.

  • Eingangsvariablen des zu prüfenden Funktionsbausteins sind als Spaltentyp Zuweisung einzufügen. Im Fall von booleschen Eingängen stehen dann im Tabelleeditor in der Spalte vordefinierte Zuweisungen zur Verfügung.

  • Ausgangsvariablen des zu prüfenden Funktionsbausteins sind als Spaltentyp Prüfung einzufügen. Für solche Spalten stehen dann im Tabelleneditor die Vergleichsoperatoren zur Verfügung, um die Prüfungsbedingung zu formulieren. Zu den möglichen Operatoren sehen Sie weiter unten.

  • Bedingungen (als Spaltentyp IEC-Ausdruck)

Je nach Spaltentyp (Eingangs- oder Ausgangsvariable) gibt es in der Spalte im Tabelleneditor entsprechende Auswahlmöglichkeiten zum Setzen der Bedingung für die Variable. Für Ausgangsvariablen kann dort außerdem je Testfall ein separater Fehlermodus (Fehlerbehandlung) festgelegt werden.

Hinweis: Die Prüfungsbedingung besteht aus der Summe aller Prüfungen der Ausgangsvariablen. Die konfigurierte Prüfungsbedingung muss über die gesamte Dauer des Testschritts erfüllt sein.

Zuweisungen und Vergleichsoperatoren

Tipp

Die möglichen Vergleichsoperatoren unterscheiden sich je nach Datentyp des Werts, der verglichen wird.

Vergleichsoperator

Beschreibung

Tastaturkürzel

Überspringen: keine Auswertung

Leerzeichen oder -

=

Gleichheit: Hier wird ein konstanter Wert (in IEC-Syntax) angegeben, und der Wert muss gleich dem Vorgabewert sein.

e, q

Ungleich

n, e

>

Größer

g

Größer gleich

g, e

<

Kleiner

l

Kleiner gleich

l, e

Konstant1: Die Variable behält in jedem Zyklus ihren Wert bei. Referenzwert ist der Wert aus dem Zyklus vor dieser Prüfung.

Hinweis: Bei der Definition einer Toleranz ist eine definierte Abweichung zulässig. Sie berechnet sich folgendermaßen:

Maximaler Wert (aller vorherigen Werte inkl. aktueller Wert) - Minimaler Wert (aller vorherigen Werte inkl. aktueller Wert) <= 2 * Toleranzwert

c

Monoton fallend1: Der Wert ist in jedem Zyklus kleiner oder gleich dem im vorherigen Zyklus.

Hinweis: Bei der Definition einer Toleranz ist auch eine positive Steigung in definierten Grenzen zulässig. Die Prüfung ist dann wie folgt:

Aktueller Wert <= minimaler Wert (aller vorherigen Werte) + 2 * Toleranzwert

f

↘↘

Streng monoton fallend1: Der Wert ist in jedem Zyklus kleiner als im vorherigen Zyklus.

Hinweis: Bei der Definition einer Toleranz ist auch eine positive Steigung in definierten Grenzen zulässig. Die Prüfung ist dann wie folgt:

Aktueller Wert < minimaler Wert (aller vorherigen Werte) + 2 * Toleranzwert

f, f

Monoton steigend1: Der Wert ist in jedem Zyklus größer oder gleich dem im vorherigen Zyklus.

Hinweis: Bei der Definition einer Toleranz ist auch eine negative Steigung in definierten Grenzen zulässig. Die Prüfung ist dann wie folgt:

Aktueller Wert >= maximaler Wert (aller vorherigen Werte) - 2 * Toleranzwert

i

↗↗

Streng monoton steigend1: Der Wert ist in jedem Zyklus größer als im vorherigen Zyklus.

Hinweis: Bei der Definition einer Toleranz ist auch eine negative Steigung in definierten Grenzen zulässig. Die Prüfung ist dann wie folgt:

Aktueller Wert > maximaler Wert (aller vorherigen Werte) - 2 * Toleranzwert

i, i

Flanke1: Der Wert muss in diesem Zyklus identisch sein, im vorigen Zyklus aber einen anderen Wert gehabt haben.

e, d

[;]

Bereich: Wird durch eine untere und eine obere Grenze angegeben

Wenn die untere Grenze kleiner gleich der oberen Grenze ist, muss der zu prüfende Wert innerhalb dieses Bereiches liegen (Grenzen Inklusive).

Wenn untere und obere Grenze identisch sind, muss der Wert gleich der beiden Grenzwerte sein.

Wenn die untere Grenze größer als die obere Grenze ist, muss der Wert außerhalb des angegebenen Bereiches liegen, also kleiner der oberen oder größer der unteren Grenze sein.

r

± Toleranz

Wertevergleiche können mit einer Toleranz angegeben werden, so dass der geprüfte Wert in einem definierten Bereich liegen kann.

1 Dieses Vergleichsverfahren benötigt einen Vergleichswert aus dem vorherigen Zyklus, um den Vergleich durchzuführen. Da für den ersten Schritt des Testfalls dieser Vergleichswert nicht zur Verfügung steht, darf das Vergleichsverfahren für den ersten Testschritt nicht verwendet werden.

Vergleichsoperator (BOOL)

Beschreibung

Tastaturkürzel

Keine Auswertung

Leerzeichen oder -

TRUE

t

FALSE

f,

Steigende Flanke1

r, e

Fallende Flanke1

f, e

↠↑

Konstant oder steigende Flanke1

c, r

↠↓

Konstant oder fallende Flanke1

c, f

↑↓

Umgeschaltet (Toggled)1: Steigende oder fallende Flanke

g

1 Dieses Vergleichsverfahren benötigt einen Vergleichswert aus dem vorherigen Zyklus, um den Vergleich durchzuführen. Da für den ersten Schritt des Testfalls dieser Vergleichswert nicht zur Verfügung steht, darf das Vergleichsverfahren für den ersten Testschritt nicht verwendet werden.

Zuweisungen (BOOL)

Beschreibung

Tastaturkürzel

Keine Auswertung

Leerzeichen oder -

TRUE

t

FALSE

f

↑↓

Umgeschaltet (Toggled): Steigende oder fallende Flanke

t, o

Fehlermodus

Fehlermodus

Tastaturkürzel

-

Der vererbte Modus wird verwendet. Wenn kein Modus definiert ist, wird die Ausführung des Testfalls abgebrochen (Standardverhalten).

Leerzeichen

!

AbortTestCase: Die Ausführung des Testfalls wird sofort abgebrochen. Dies ist auch die Standardeinstellung, wenn kein Failuremodus definiert ist.

c

!G

AbortTestCaseGroup: Die Ausführung des Testfalls wird sofort abgebrochen, die weiteren Testfälle der Testfallgruppe werden übersprungen.

g

!!

AbortUnitTesting: Die Ausführung des IEC Unit Tests wird sofort abgebrochen.

t

!!!

AbortTestRun: Das Testskript wird sofort abgebrochen.

r