SCL-Unit-Tests für Siemens-SPS
Was SCL-Unit-Testing in Studio kann
Arrange · Act · Assert
- Visueller Editor & JSON
- 20+ Assertion-Operatoren
- Mehrstufige Schritte (write/wait/assert)
PLCSIM Advanced & echte SPS
- PLCSIM Advanced V3.0+
- S7 Nativ & OPC UA
- Sicherheitsrückfrage vor Hardware-Läufen
KI-erstellte Test-Suites
- Aus dem Baustein-Interface
- Boundary-Value-Generierung
- Direkt im Chat editierbar
CI/CD & Reports
- JUnit-XML & HTML
- rerun-affected
- Pipeline-tauglich
Verlauf & Trends
- Lauf-Historie & Diff
- Flaky-Erkennung
- Trend-Charts & CSV-Export
Kein TIA Portal offen nötig
- Offline-Authoring
- Pfade nie im Klartext gespeichert
- Suites einchecken ohne Secrets
SCL-Unit-Tests für TIA Portal — Leitfaden
Ein Unit-Test in TIA Portal prüft einen einzelnen SPS-Baustein (FB/FC) isoliert: definierte Eingänge schreiben (Arrange), die Steuerung einige Zyklen laufen lassen (Act) und die Ausgänge gegen erwartete Werte prüfen (Assert). Der Test läuft gegen PLCSIM Advanced oder eine echte S7-SPS — automatisiert, wiederholbar und in CI/CD.
Wie funktioniert ein SCL-Unit-Test?
AnyAutomation Studio liest das Interface deines Bausteins direkt aus dem TIA-Projekt, damit Inputs und Assertions gegen die echten Parameternamen und -typen validieren. Eine Test-Suite ist eine .tia-tests/*.json-Datei neben deiner Projektdatei. Jeder Test-Case folgt dem Muster Arrange → Act → Assert: Werte schreiben, Zyklen abwarten, Ergebnisse prüfen. Der Runner erstellt die PLCSIM-Instanz, kompiliert, verbindet, schreibt die Inputs, liest die Outputs und wertet die Assertions aus.
Gegen PLCSIM Advanced oder echte Hardware
Standardmäßig läuft eine Suite gegen eine PLCSIM-Advanced-Instanz — schnell und ohne physische Hardware. Über S7 Nativ oder OPC UA testest du direkt gegen eine reale S7-1200/1500. Vor jedem Lauf auf echte Hardware erscheint eine Sicherheitsrückfrage, und der Runner prüft, dass die Steuerung in RUN ist, bevor er schreibt. Die volle Konfiguration steht in der Unit-Testing-Dokumentation.
Studio vs. Siemens Test Suite
Siemens Test Suite (Advanced) ist tief in TIA Portal integriert und stark bei zertifizierten Abnahme-Workflows. AnyAutomation Studio setzt anders an: leichtgewichtige, skriptbare SCL-Unit-Tests, die in deine Versionsverwaltung und CI/CD passen — Git-Diffs der Suites, KI-erstellte Test-Cases, Trend-Reports und ein Kommandozeilen-Runner für die Pipeline. Wenn du PLC-Code wie Software testen willst, statt nur einmalig abzunehmen, ist das der Unterschied. Siehe auch TIA Portal Test Suite Alternative.
Häufige Fragen
Was ist ein Unit-Test in TIA Portal?
Ein Unit-Test prüft einen einzelnen SPS-Baustein isoliert nach dem Muster Arrange/Act/Assert: Eingänge setzen, die Steuerung zyklen lassen, Ausgänge gegen erwartete Werte prüfen — gegen PLCSIM Advanced oder eine echte S7-SPS.
Kann ich gegen echte S7-1200/1500-Hardware testen?
Ja. Über eine S7-Nativ- oder OPC-UA-Verbindung läuft eine Suite direkt gegen die reale Steuerung. Vor dem Lauf erscheint eine Sicherheitsrückfrage, und der Runner schreibt nur, wenn die SPS in RUN ist.
Brauche ich eine zusätzliche Siemens-Lizenz für Unit-Tests?
Für PLCSIM-Advanced-Läufe brauchst du eine PLCSIM-Advanced-Lizenz von Siemens. Das SCL-Unit-Testing selbst ist Teil von AnyAutomation Studio ab der Pro-Stufe — keine Test-Suite-Ultimate-Lizenz nötig.
Läuft das in CI/CD?
Ja. Der Kommandozeilen-Runner tia-test-runner führt Suites in GitLab CI, Jenkins und ähnlichen Pipelines aus und erzeugt JUnit-XML- und HTML-Reports. --rerun-affected führt nur Suites aus, deren Baustein sich geändert hat.
Kann die KI Test-Suites erzeugen?
Ja. Der KI-Assistent leitet aus dem Baustein-Interface Test-Cases samt Boundary-Werten ab und schreibt sie in den .tia-tests-Ordner — direkt aus dem Chat editierbar.