CoreProcess-Befehle automatisch ausführen

by | 01.10.2013 | in-STEP BLUE anwenden

Wissen Sie, dass die selbst definierten Befehle zum Erzeugen neuer Produkte aus bereits vorhandenen Dokumenten und Formularen nicht nur per Kontextmenübefehl aufgerufen, sondern auch durch Aktionen in Zustandsautomaten und per Knopfdruck in Formularen ausgelöst werden können? Sehr einfach realisieren Sie so einen Automatismus beispielsweise für Ihr Testmanagement, der neue Produkte aus vorhandenen mittels einer Aktion erzeugt.

Ableite-Befehl in einer Aktion im Zustandsautomaten für Testmanagement nutzen

Stellen Sie sich vor, Sie nutzen beim Testen den von uns für das Testmanagement mit in-Step vorgeschlagenen Ablauf. Dann würden Sie zu Ihren Testfällen Testläufe anlegen, die wiederum Testergebnisse liefern. In den Testergebnissen ist festgehalten, wie die Tests des Testlaufs ausgefallen sind. Was passiert, wenn ein Test fehlschlägt? Was wenn ein Fehler gefunden wurde? Natürlich wird der Fehler in der Beschreibung des Testergebnisses festgehalten. Hier ist dann aber im Augenblick auch schon Schluss. Schön wäre es, wenn aus einem solchen Testergebnis gleich eine entsprechende Fehlermeldung erzeugt würde, die dann von der Entwicklung weiter verarbeitet werden könnte. Genau dies können Sie jetzt sehr einfach umsetzen.

Schritt 1: Komponente neu im Projekt registrieren

Was benötigen Sie dazu? Die gewünschte Funktion finden Sie in der CoreProcExtension. Um sie für Ihr Projekt verfügbar zu machen, müssen Sie diese Extension noch einmal im Projekt registrieren. Über das Menü Projekt/Komponenten öffnen Sie den Komponentendialog. Durch Klicken auf die Schaltfläche Registrieren links unten, gelangen Sie in einen Auswahldialog. Dort wählen Sie die CoreProcExtension.dll aus dem in-Step Installationsverzeichnis aus. Angeboten wird Ihnen nun eine Auswahl von möglichen Komponenten, die Sie in Ihrem Projekt verwenden können. Vieles davon ist bereits im Projekt vorhanden. Neu ausgewählt werden muss die Aktion „Ausführen eines CoreProcess-Befehls“.

Komponenten in in-STEP BLUE registrieren
Komponenten registrieren in in-STEP BLUE

Aktivieren Sie diese Komponente und bestätigen Sie den Dialog mit OK. Als Ergebnis können Sie nun in Zustandsautomaten für Produkte eine neue Aktion auswählen.

Aktionen in Zustandsautomaten in in-STEP BLUE definieren
Aktionen in Zustandsautomaten definieren in in-STEP BLUE

Welche Befehle in dieser Aktion ausgewählt werden können, wird bei der Konfiguration festgelegt. Dies werden wir sehen, wenn wir den konkreten Befehl für unser Beispiel definieren.

Schritt 2: Fehlermeldungen mit automatischer Namensvergabe definieren

In unserem Beispiel sollen Fehlermeldungen aus Testergebnissen erzeugt werden. Für die Fehlermeldungen wird deshalb ein neuer Produkttyp benötigt mit einer entsprechenden Formularvorlage. Sie könnte so aussehen:

Fehlermeldung definieren in in-STEP BLUE
Testmanagement: Fehlermeldung definieren

Die im Formular dargestellten Eigenschaften müssen in einer in-Step Kategorie definiert sein, die für die Instanzen der Fehlermeldung verwendet wird. Diese Kategorie (BUG REPORT) würde dann passend zur Vorlage so aussehen:

Kategorien definieren in in-STEP BLUE
Kategorie definieren in in-STEP

Der Produkttyp selbst bekommt noch eine kleine Besonderheit mit. Die Namen der erzeugten Produkte sollen automatisch vergeben werden. Dazu wird die Eigenschaft „UseAutomaticName“ verwendet. Wird diese Eigenschaft aktiviert, wird der Name der Produkte dieses Typs automatisch erzeugt. Ein Muster für die Vergabe des Namens kann man analog wie bei der automatischen Nummerierung in der Eigenschaft „Auto Value for Automatic Name“ vergeben.

Eigenschaft von Fehlermeldung vergeben
Testmanagement: Eigenschaften von Fehlermeldung vergeben

Schritt 3: Befehl zum Ableiten definieren

Als nächstes definieren Sie nun den Befehl zum Ableiten von Fehlermeldungen aus Testergebnissen. Im Komponentendialog (Projekt/Komponenten) wählen Sie unter den CommandServern „… für Produkte (CoreProcess)” aus und klicken unten auf Konfigurieren. Mittels Neuer Befehl/Produkt ableiten erzeugen Sie den gewünschten Befehl wie folgt:

Befehle zum Ableiten definieren
Befehl zum Ableiten definieren

Nach Bestätigen mit OK finden Sie den neuen Befehl in der Liste der verfügbaren Befehle. Hier muss nun noch der Haken gesetzt werden, dass der Befehl in einer Aktion im Zustandsautomaten ausgeführt werden kann.

Verfügbare Befehle
Liste der verfügbaren Befehle

Schritt 4: Aktion im Zustandsautomaten definieren

Wie wird nach dieser Vorarbeit nun der Befehl im Zustandsautomaten für Testergebnisse verwendet? Eine Fehlermeldung soll genau dann erzeugt werden, wenn ein Test fehlgeschlagen ist. Der Zustandsautomat für Testergebnisse hat deshalb zwei End-Zustände bekommen „Test erfolgreich“ und „Test nicht erfolgreich“ sowie entsprechende Ereignisse und Zustandsübergänge, die zu diesen Endzuständen hinführen.

Eigenschaften des Zusstandsautomaten
Eigenschaften des Zustandsautomaten

„Test nicht erfolgreich“ bekommt als Eingangsaktion nun u.a. die Aktion „Ausführen eines CoreProcess-Befehls“ mit. Als Befehl wird der in Schritt 3 konfigurierte Befehl ausgewählt.

Aktionen zum Ausführen definieren
Testmanagement: Aktionen zum Ausführen definieren

Das war es auch schon. Der Zustandsautomat ist nun mit der gewünschten Aktion ausgestattet.

Das Ergebnis für Ihr Testmanagement: Automatisch erzeugtes Formular

Die Vorbereitungen sind jetzt komplett. Sie können das neu definierte Verhalte ausprobieren, indem Sie einfach einmal zu einem Testfall einen Testlauf mit den dazugehörigen Testergebnissen erzeugen. Bearbeiten Sie das Testergebnis so, dass in der Bemerkung auch Text enthalten ist. Nach dem Zurückgeben des bearbeiteten Testergebnisses wählen Sie „Test nicht erfolgreich“. Es entsteht automatisch ein neues Formular vom Typ „Fehlermeldung“, das in seiner Beschreibung den Text aus der Bemerkung des Testergebnisses enthält.

Testfälle mit Ergebnissen
Testfälle mit Ergebnissen

Das hier beschriebene Beispiel ist nur eines von vielen, wie man CoreProcess-Befehle sinnvoll in Zustandsautomaten einsetzen kann. Wir freuen uns darauf, hier oder an anderer Stelle auch von Ihren Ideen zu hören und zu lesen.