Beispiel 1: Testfall für Counter

In diesem Beispiel wird ein Test für den folgenden ST-Code erstellt und ausgeführt:

FUNCTION_BLOCK testCounter
VAR
/* If 'up' = 'TRUE', counter counts up. */
up : BOOL;
/* 'count' is incremented/decremented by '1' for each cycle. */
count : INT;
END_VAR
 
IF up THEN
count := count + 1;
ELSE
count := count - 1;
END_IF;
END_FUNCTION_BLOCK

Dieser ST-Code entspricht jenem im Program Counter, das aufgrund des Beispielprojekts für die integrierte SPS Zähler (ST) erstellt wird. Aufgrund der Einschränkungen für Programme wurde der ST-Code jedoch in einen Funktionsbaustein übertragen.

So testen Sie den obigen Funktionsbaustein testCounter:

  1. Erstellen Sie die Testsuite für testCounter mit Hilfe des Befehls Testsuite erstellen. Details: Siehe "Testsuite erstellen".
    Ergebnis: Die Testsuite-Datei testCounter.test und die Excel-Datei testCounter.xlsm sind im gleichen Ordner wie das ST-Objekt vorhanden.

  2. Öffnen Sie die Excel-Datei, geben Sie die Testdaten im bereits vorhandenen Arbeitsblatt test testCounter ein und speichern Sie die geänderte Excel-Datei.
    Hier das Arbeitsblatt, wie es automatisch für testCounter erzeugt wurde:
    images/download/attachments/449904880/TF_TestsuiteExampleCounter-version-1-modificationdate-1596023850243-api-v2.png
    Das Arbeitsblatt enthält bereits sowohl die Spalten für die Variablen, die Eingangsdaten liefern, als auch die Spalten für die Ausgänge (= erwartete Ergebnisse). Da count sowohl gelesen als auch darauf geschrieben wird, sind 2 Spalten für count vorhanden.
    Sie entscheiden, wie viele Testsequenzen und welche Testdaten Sie für den Test eingeben. In diesem Beispiel wurden die folgenden Testsequenzen und Testdaten eingegeben:
    images/download/attachments/449904887/TF_TestsuiteExampleCounterModified-version-1-modificationdate-1596024065229-api-v2.png



    images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/information.svg Die Excel-Datei enthält auch andere Arbeitsblätter, die in diesem Beispiel nicht verwendet werden. Informationen über diese Arbeitsblätter finden Sie unter "Struktur der Excel-Testsuite, Arbeitsblätter bearbeiten".

  3. Übernehmen Sie alle Testdaten aus der Excel-Datei in die Testsuite-Datei testCounter.test, in dem Sie die Excel-Datei importieren. Details: Siehe "Testsuite auf Basis der Excel-Datei für die Testdurchführung erstellen".

  4. Lassen Sie den Test ausführen, z.B. einen SiL-Test mit Testabdeckung. Details: Siehe "Test ausführen".
    Ergebnis der Testausführung: Die Konsole zeigt den Fortschritt und das Ergebnis der Testausführung.
    images/download/attachments/449904898/TF_TestsuiteExampleCounterConsole-version-1-modificationdate-1596024885192-api-v2.png



    images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/information.svg Falls Fehlermeldungen angezeigt werden, ist wahrscheinlich eine andere Version von logi.CAD 3 gestartet und/oder die Anwendung wurde bereits auf die SPS geladen. Siehe "Test ausführen" für die erforderlichen Schritte.

  5. Kontrollieren Sie die Testausführung. Details: Siehe "Testausführung kontrollieren".
    Bei einem SiL-Test mit Testabdeckung können Sie zusätzlich die Testabdeckung im Editor anzeigen lassen. Für das Beispiel wird diese Testabdeckung angezeigt:
    images/download/attachments/449904902/TF_TestsuiteExampleCounterCoverage-version-1-modificationdate-1596025091125-api-v2.png



    images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/information.svg Für eine vollständige Testabdeckung der IF-Anweisung wären eigentlich nur 2 Testsequenzen im Test nötig. Lesen Sie unter "Anzeige der Testabdeckung im Editor" für Details nach.