Automatisierter PiL-Test (inkl. Freigabe von Bibliotheken)

logi.CAD 3  stellt ein Werkzeug für den automatisierten PiL-Test von POE einer Bibliothek in  logi.CAD 3  zur Verfügung. Zusätzlich ist es mit einem Werkzeug möglich, diese Bibliothek automatisiert freizugeben.

Gut zu wissen

(grey lightbulb) Das Werkzeug ist zur Verwendung durch einen fortgeschrittenen Anwender von logi.CAD 3  vorgesehen.

(grey lightbulb)Bedingung für die erfolgreiche Verwendung des Werkzeugs sind Kenntnisse über die durchzuführende Aktion, wie sie in der grafischen Benutzeroberläche von logi.CAD 3  ausgeführt werden würde.

(grey lightbulb)Die Ausgaben des Werkzeugs erfolgen nur in englischer Sprache.

Inhalt dieses Artikels:

Vorbereitungen

  1. Stellen Sie sicher, dass eine Variante von  logi.CAD 3 installiert ist, in der das Testframework verfügbar ist. Halten Sie die folgenden Informationen bereit:  
    • der Pfad zum Installationsverzeichnis von logi.CAD 3  
    • der Pfad zu einem Verzeichnis, das als Arbeitsbereich verwendet wird
      Falls das Verzeichnis nicht existiert, wird es vom Werkzeug erstellt.
       
    • der Pfad zum Projekt, das importiert werden soll (bevor die PiL-Tests ausgeführt werden)
    • der Pfad zur Konfigurationsdatei für das Protokoll (siehe unten für weitere Informationen)
      Eine Datei mit einer Beispielkonfiguration ist in der Installation von  logi.CAD 3 enthalten.
       
  2. Öffnen Sie eine Befehlszeile: z.B. cmd.exe unter Windows und wechseln Sie in das Installationsverzeichnis von  logi.CAD 3  

Aufruf

@REM Commands to start the development environment
start cmd /c logicad3.exe -data <WORKSPACE> -nosplash -vmargs -Dlicenseaccepted=true -Dosgi.requiredJavaVersion=<X.Y> -DLC3useRTS3MetaData=true -Xms256m -Xmx6144m -Dlc3.serverport=50055 -Dlog4j.configuration=file:<LOG-CONFIGURATION> 
ping 127.0.0.1 -n 40  1>NUL

@REM Command to import project with the test suites
java -jar util\com.logicals.lc3.command.jar -port 50055 -import -projectPath <PROJECTPATH>

@REM Command to generate and load the library
java -jar util\com.logicals.lc3.command.jar -port 50055 -generateLibrary -projectName <PROJECT> -libraryDefinitionFile <PROJECT_REL_PATH\LIB_CONFIGURATION.lc3lib>
java -jar util\com.logicals.lc3.command.jar -port 50055 -uploadLibrary -projectName <PROJECT> -libraryDefinitionFile <PROJECT_REL_PATH\LIB_CONFIGURATION.lc3lib> -libraryName <LIBRARY> -deviceName <DEVICE>

@REM Command to execute the PiL-tests
java -jar util\com.logicals.lc3.command.jar -port 50055 -runPilTest -projectName <PROJECT> -libraryDefinitionFile <PROJECT_REL_PATH\LIB_CONFIGURATION.lc3lib> -libraryName <LIBRARY> -deviceName <DEVICE>

@REM Command to release the library
java -jar util\com.logicals.lc3.command.jar -port 50055 -releaseLibrary -projectName <PROJECT> -libraryDefinitionFile <PROJECT_REL_PATH\LIB_CONFIGURATION.lc3lib> -libraryName <LIBRARY>

@REM Command to exit the development environment
java -jar util\com.logicals.lc3.command.jar -port 50055 -shutdown

Beschreibung der Parameter:

ParameterBeschreibung Beispiel

<WORKSPACE>

absoluter Pfad zu einem Arbeitsbereich, in den das Projekt importiert werden soll
Beachten Sie::

  • Das Verzeichnis des Arbeitsbereichs darf sich nicht innerhalb eines Verzeichnisses befinden, bei dem es sich um ein  logi.CAD 3 -Projekt handelt.
  • Nach dem Aufruf enthält der Arbeitsbereich einen Verweis auf das  logi.CAD 3 -Projekt. Das bedeutet, dass das  logi.CAD 3 -Projekt nicht in den Arbeitsbereich kopiert wurde.
    Dies ist das gleiche Verhalten wie innerhalb der grafischen Benutzeroberfläche von 
    logi.CAD 3 , wenn Sie den Befehl Importieren... und den Importtyp Vorhandene Projekte in den Arbeitsbereich mit der deaktivierten Option Projekte in Arbeitsbereich kopieren verwenden würden.

C:\temp\LC3Workspace

<X.Y>

Versionsnummer der benötigten Java-Version
Für diese Angabe öffnen Sie am besten die Datei   logiCAD3 .ini , die im Installationsordner von  logi.CAD 3  vorhanden ist. Suchen Sie die Zeile mit dem Text -Dosgi.requiredJavaVersion=.  Übernehmen Sie die Angabe hinter = als die Versionsnummer.

1.8

<LOG-CONFIGURATION>

Pfad zur Konfigurationsdatei für das Protokoll
Alle Meldungen des Werkzeugs werden an das Gerät ausgegeben, das in der Konfigurationsdatei für das Protokoll angegeben ist.

C:\LC3LogConfig\log4j.xml

<PROJECTPATH>

absoluter Pfad zum Projekt, das importiert werden soll

C:\LC3Projects\MyProject
<PROJECT>

Name des Projekts, das die Testsuiten enthält

MyProject

<PROJECT_REL_PATH\LIB_CONFIGURATION.lc3lib>

Name der Bibliothekskonfiguration (mit der Erweiterung .lc3lib) inkl. des projektrelativen Pfades

src/MyLib01.lc3lib

<LIBRARY>

Name der erzeugten Bibliothek (inkl. der Versionsnummer)MyLib01__0.0.1

<DEVICE>

Name des Geräts, auf das die Bibliothek geladen werden soll

MyDevice
  • Der Parameter -noSplash ist optional. Wird er nicht angegeben, wird der Startbildschirm von logi.CAD 3  nach dem Aufruf angezeigt.
     
  • Der Parameter -Dlog4j.configuration ist ebenfalls optional. logi.cals  empfiehlt jedoch, diesen Parameter anzugeben, damit Protokoll-Ereignisse ausgegeben werden.
     
  • Alle anderen Parameter sind erforderlich. Falls sie nicht angegeben werden, weist eine entsprechende Meldung darauf hin, dass Parameter fehlen.  
  • Wenn der PiL-Test erfolgreich durchgeführt wurde, erzeugt  logi.CAD 3 die komprimierte Bibliothek (mit dem Testbericht und den Protokollen) innerhalb des Unterordners target des Projekts.

Beispiel für Aufruf
start cmd /c logicad3.exe -data C:\temp\LC3Workspace -nosplash -vmargs -Dlicenseaccepted=true -Dosgi.requiredJavaVersion=1.8 -DLC3useRTS3MetaData=true -Xms256m -Xmx6144m -Dlc3.serverport=50055 -Dlog4j.configuration=file:C:\LC3LogConfig\log4j.xml
ping 127.0.0.1 -n 40  1>NUL

java -jar util\com.logicals.lc3.command.jar -port 50055 -import -projectPath C:\LC3Projects\MyProject

java -jar util\com.logicals.lc3.command.jar -port 50055 -generateLibrary -projectName MyProject -libraryDefinitionFile src/MyLib01.lc3lib
java -jar util\com.logicals.lc3.command.jar -port 50055 -uploadLibrary -projectName MyProject -libraryDefinitionFile src/MyLib01.lc3lib -libraryName MyLib01__0.0.1 -deviceName MyDevice

java -jar util\com.logicals.lc3.command.jar -port 50055 -runPilTest -projectName MyProject -libraryDefinitionFile src/MyLib01.lc3lib -libraryName MyLib01__0.0.1 -deviceName MyDevice

java -jar util\com.logicals.lc3.command.jar -port 50055 -releaseLibrary -projectName MyProject -libraryDefinitionFile src/MyLib01.lc3lib -libraryName MyLib01__0.0.1

java -jar util\com.logicals.lc3.command.jar -port 50055 -shutdown

Konfigurationsdatei für das Protokoll 

Diese Datei wird zur Konfiguration des log4j-Protokollierungsmechanismus benötigt. Die Datei gibt an, wie Protokoll-Ereignisse ausgegeben werden.

Konfigurationsdatei für das Protokoll (Beispiel)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="false" xmlns:log4j='http://jakarta.apache.org/log4j/'>
 
  <!-- This configuration logs to console. -->
  <appender name="console" class="org.apache.log4j.ConsoleAppender">
    <param name="target" value="System.out"/>
    <param name="immediateFlush" value="true"/>
    <param name="encoding" value="UTF-8"/>
    <param name="threshold" value="info"/>
    <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p:  %m%n" />
    </layout>
  </appender>

  <!-- This configuration logs to a file, with more information than for the console. -->
  <appender name="file" class="org.apache.log4j.DailyRollingFileAppender">
    <param name="file" value="C:\\temp\\logfile.log" />
    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d{HH:mm:ss} %-5p [THREAD ID=%t] [Method:%M] %c{1}:%L - %m%n" />
    </layout>
  </appender>
  <root>
    <level value="INFO" />
    <appender-ref ref="console" />
    <appender-ref ref="file" />
  </root>
</log4j:configuration>