PolarionPlugin Reference: Unterschied zwischen den Versionen
Matilk (Diskussion | Beiträge) |
Matilk (Diskussion | Beiträge) K (Formattierung) |
||
Zeile 17: | Zeile 17: | ||
===Test Case=== |
===Test Case=== |
||
expecco benutzt das bereits vorhandene Workitem Testcase. Um einen automatisierten expecco Test mit einem Testfall in Polarion verknüpfen zu können, wird ein zusätzliches Customfield benötigt. Damit es von expecco erkannt werden kann, muss es die ID expeccoID besitzen: |
expecco benutzt das bereits vorhandene Workitem Testcase. Um einen automatisierten expecco Test mit einem Testfall in Polarion verknüpfen zu können, wird ein zusätzliches Customfield benötigt. Damit es von expecco erkannt werden kann, muss es die ID expeccoID besitzen: |
||
[[Bild:Testcase Customfields.jpg| |
[[Bild:Testcase Customfields.jpg|700px|none|thumb|Zusätzliches Customfield expeccoID für Testcase]] |
||
Das Workitem benötigt einen zusätzlichen Status, der angibt, dass es sich um einen mit expecco automatisierten Testfall handelt, den expecco später ausführen kann. Dieser Status muss die ID expecco haben. |
Das Workitem benötigt einen zusätzlichen Status, der angibt, dass es sich um einen mit expecco automatisierten Testfall handelt, den expecco später ausführen kann. Dieser Status muss die ID expecco haben. |
||
[[Bild:Testcase Status.jpg| |
[[Bild:Testcase Status.jpg|700px|none|thumb|Zusätzlicher Status expecco für Testcase]] |
||
Nun muss noch der Workflow dem neuen Status angepasst werden. Die Aktion zum Übergang in den neuen Status sollte eine vorhandene expeccoID voraussetzen. |
Nun muss noch der Workflow dem neuen Status angepasst werden. Die Aktion zum Übergang in den neuen Status sollte eine vorhandene expeccoID voraussetzen. |
||
[[Bild:Testcase Workflow.jpg| |
[[Bild:Testcase Workflow.jpg|700px|none|thumb|Workflow-Erweiterung für Testcase]] |
||
===Test Run=== |
===Test Run=== |
||
Für den Testrun wird eine neue Enumeration benötigt. Durch ein Customfield dieses Typs wird gesteuert, ob ein Testlauf automatisch durch einen expecco-Host ausgeführt werden soll. |
Für den Testrun wird eine neue Enumeration benötigt. Durch ein Customfield dieses Typs wird gesteuert, ob ein Testlauf automatisch durch einen expecco-Host ausgeführt werden soll. |
||
[[Bild:Testrun expeccoRun.jpg| |
[[Bild:Testrun expeccoRun.jpg|700px|none|thumb|Enumeration für Testrun (expeccoRun-enum.xml)]] |
||
Es gibt drei Zustände: |
Es gibt drei Zustände: |
||
;''free'' |
|||
:Der Testlauf wird von expecco nicht beachtet. |
|||
⚫ | |||
;''runAll'' |
|||
⚫ | |||
⚫ | |||
;''runExpecco'' |
|||
⚫ | |||
Die Enumeration kann durch Hochladen von expeccoRun-enum.xml oder manuell erzeugt werden. Die Bezeichnungen für die IDs müssen genau so übernommen werden. |
Die Enumeration kann durch Hochladen von expeccoRun-enum.xml oder manuell erzeugt werden. Die Bezeichnungen für die IDs müssen genau so übernommen werden. |
||
Für den Testrun müssen zwei neuen Customfields angelegt werden. Ein Feld mit der ID expeccoRun und der soeben erzeugten Enumeration als Typ, ein weiteres Feld mit der ID runningHost vom Typ String. Letzteres Feld wird später von einem expecco Host benutzt, wenn dieser den Testlauf bearbeitet. |
Für den Testrun müssen zwei neuen Customfields angelegt werden. Ein Feld mit der ID expeccoRun und der soeben erzeugten Enumeration als Typ, ein weiteres Feld mit der ID runningHost vom Typ String. Letzteres Feld wird später von einem expecco Host benutzt, wenn dieser den Testlauf bearbeitet. |
||
[[Bild:Testrun Customfields.jpg| |
[[Bild:Testrun Customfields.jpg|700px|none|thumb|Zusätzliche Customfields für Testrun]] |
||
===Neues Workitem (expeccoHost)=== |
===Neues Workitem (expeccoHost)=== |
||
Zeile 42: | Zeile 45: | ||
Für das Workitem muss eine Enumeration für den Status angelegt werden (hostStatus). Diese hat die beiden Zuständen approved und rejected, wovon letzteres der Default-Zustand ist. Die Enumeration kann durch Hochladen von expeccoHost-hostStatus-enum.xml oder manuell erzeugt werden. Ein expecco-Host kann einen Testlauf nur bearbeiten, wenn er auf approved gesetzt wird. Dadurch muss ein Host nach der Registrierung von expecco aus immer zunächst in Polarion freigegeben werden bevor er ausführen darf. |
Für das Workitem muss eine Enumeration für den Status angelegt werden (hostStatus). Diese hat die beiden Zuständen approved und rejected, wovon letzteres der Default-Zustand ist. Die Enumeration kann durch Hochladen von expeccoHost-hostStatus-enum.xml oder manuell erzeugt werden. Ein expecco-Host kann einen Testlauf nur bearbeiten, wenn er auf approved gesetzt wird. Dadurch muss ein Host nach der Registrierung von expecco aus immer zunächst in Polarion freigegeben werden bevor er ausführen darf. |
||
[[Bild:ExpeccoHost hostStatus.jpg| |
[[Bild:ExpeccoHost hostStatus.jpg|700px|none|thumb|Enumeration für den Status von expeccoHost]] |
||
Die Customfields für den expecco Host können durch Hochladen von expeccoRun-enum.xml oder manuell erzeugt werden. Siehe dazu folgende Abbildung. |
Die Customfields für den expecco Host können durch Hochladen von expeccoRun-enum.xml oder manuell erzeugt werden. Siehe dazu folgende Abbildung. |
||
[[Bild:ExpeccoHost Customfields.jpg| |
[[Bild:ExpeccoHost Customfields.jpg|700px|none|thumb|Customfields für expeccoHost]] |
||
==Benutzung des Polarion Plug-ins in expecco== |
==Benutzung des Polarion Plug-ins in expecco== |
||
Zeile 59: | Zeile 62: | ||
Auf der rechten Seite können vier Aktionen ausgewählt werden: |
Auf der rechten Seite können vier Aktionen ausgewählt werden: |
||
;''Test öffnen'' |
|||
:Öffnet den expecco Test, der mit dem Testfall verknüpft ist, falls bereits eine Verknüpfung existiert. |
|||
⚫ | |||
;''Test erstellen'' |
|||
⚫ | |||
⚫ | |||
⚫ | |||
;''Test hochladen'' |
|||
⚫ | |||
;''aus Test erstellen'' |
|||
⚫ | :In Polarion wird zu einem vorhandenen expecco Test ein neuer Testfall erzeugt, der die entsprechenden Schritte enthält. Der expecco Test wird direkt mit dem neuen Testfall verknüpft. Ist in der Übersicht ein Testfall ausgewählt, so kann dieser auf diese Weise auch aktualisiert werden, wodurch der Titel und die Schrittbeschreibung angepasst werden. |
||
===Automatische Ausführung von Testläufen=== |
===Automatische Ausführung von Testläufen=== |
Version vom 12. Januar 2016, 13:46 Uhr
Inhaltsverzeichnis
Polarion Plugin[Bearbeiten]
Mithilfe des Polarion Plug-ins für expecco lassen sich Testfälle aus Polarion einfach in expecco übertragen um sie dort zu automatisieren. Die automatisierten Tests können dann mit den Testfällen in Polarion verknüpft werden.
Gleichzeitig bietet das Plug-in die Möglichkeit, Testläufe, die in Polarion erstellt werden, automatisch abzurufen und auszuführen. Die Ergebnisse werden anschließend in Polarion hinterlegt.
Konfiguraion[Bearbeiten]
Durch das Polarion Plug-in von expecco bietet sich die Möglichkeit der Automatisierung der von Polarion verwalteten Tests. Mehrere expecco-Instanzen können sich nun von jedem beliebigen Ort mit der Polarion Datenbank verbinden und in ihrer Umgebung automatisierte Tests ausführen. Deren Ergebnisse werden direkt in Polarion eingespeist. Die Ausführung der Testläufe wird von Polarion verwaltet.
Benötigte Anpassungen in Polarion[Bearbeiten]
In Polarion müssen nur wenige Änderungen vorgenommen werden, um die Anbindung von expecco zu ermöglichen. Davon betroffen sind:
- Das Workitem Testcase
- Customfields für Testrun
- ein zusätzliches Workitem
Test Case[Bearbeiten]
expecco benutzt das bereits vorhandene Workitem Testcase. Um einen automatisierten expecco Test mit einem Testfall in Polarion verknüpfen zu können, wird ein zusätzliches Customfield benötigt. Damit es von expecco erkannt werden kann, muss es die ID expeccoID besitzen:
Das Workitem benötigt einen zusätzlichen Status, der angibt, dass es sich um einen mit expecco automatisierten Testfall handelt, den expecco später ausführen kann. Dieser Status muss die ID expecco haben.
Nun muss noch der Workflow dem neuen Status angepasst werden. Die Aktion zum Übergang in den neuen Status sollte eine vorhandene expeccoID voraussetzen.
Test Run[Bearbeiten]
Für den Testrun wird eine neue Enumeration benötigt. Durch ein Customfield dieses Typs wird gesteuert, ob ein Testlauf automatisch durch einen expecco-Host ausgeführt werden soll.
Es gibt drei Zustände:
- free
- Der Testlauf wird von expecco nicht beachtet.
- runAll
- Alle zum Testlauf gehörenden Testfälle werden von expecco ausgeführt; Testfälle, die keinen expecco-Status haben, werden geblockt.
- runExpecco
- Alle zum Testlauf gehörenden Testfälle mit expecco-Status werden ausgeführt; andere Testfälle werden nicht verändert.
Die Enumeration kann durch Hochladen von expeccoRun-enum.xml oder manuell erzeugt werden. Die Bezeichnungen für die IDs müssen genau so übernommen werden.
Für den Testrun müssen zwei neuen Customfields angelegt werden. Ein Feld mit der ID expeccoRun und der soeben erzeugten Enumeration als Typ, ein weiteres Feld mit der ID runningHost vom Typ String. Letzteres Feld wird später von einem expecco Host benutzt, wenn dieser den Testlauf bearbeitet.
Neues Workitem (expeccoHost)[Bearbeiten]
Der einzige neu benötigte Workitem-Typ muss die ID expeccoHost bekommen. Ein solches Workitem repräsentiert einen expecco Host, der für die Automatisierung eingesetzt wird. Ein expecco Host wird beim registrieren selbst ein Workitem von diesem Typen anlegen.
Für das Workitem muss eine Enumeration für den Status angelegt werden (hostStatus). Diese hat die beiden Zuständen approved und rejected, wovon letzteres der Default-Zustand ist. Die Enumeration kann durch Hochladen von expeccoHost-hostStatus-enum.xml oder manuell erzeugt werden. Ein expecco-Host kann einen Testlauf nur bearbeiten, wenn er auf approved gesetzt wird. Dadurch muss ein Host nach der Registrierung von expecco aus immer zunächst in Polarion freigegeben werden bevor er ausführen darf.
Die Customfields für den expecco Host können durch Hochladen von expeccoRun-enum.xml oder manuell erzeugt werden. Siehe dazu folgende Abbildung.
Benutzung des Polarion Plug-ins in expecco[Bearbeiten]
Das Plug-in hilft zum einen, in Polarion definierte Testfälle mit expecco zu automatisieren. Zum anderen kann damit ein expecco-Host gestartet werden, der Polarion nach geplanten Testläufen durchsucht, diese dann automatisch ausführt und die Ergebnisse in Polarion speichert.
Anmelden[Bearbeiten]
Um in expecco Zugriff auf die Polarion Datenbank zu erhalten, müssen zuerst die Einstellungen festgelegt werden. Die Einstellungen sind entweder über die expecco-Einstellungen bei den Erweiterungen erreichbar oder direkt über den Polarion Eintrag im Erweiterungen-Menü. Dort werden der Host und die Port benötigt, unter dem die laufende Polarion Anwendung zu finden ist, sowie ein gültiger Polarion-Benutzername mit Passwort.
Verwaltung der automatisierten Testfälle[Bearbeiten]
Über das Erweiterungen-Menü lässt sich unter Polarion eine Übersicht aller Testfälle öffnen. Dort werden alle Testfälle angezeigt, die aktuell in Polarion gespeichert sind. In der oberen linken Ecke lassen sich diese nach Projekten filtern. In der Tabelle wird neben der ID und dem Titel des Testfalls in der linken Spalte angezeigt, ob zu diesem Testfall ein expecco Test verknüpft wurde (grün), ob kein Test verknüpft werden kann (rot), oder ob noch kein Test verknüpft wurde (grau).
Auf der rechten Seite können vier Aktionen ausgewählt werden:
- Test öffnen
- Öffnet den expecco Test, der mit dem Testfall verknüpft ist, falls bereits eine Verknüpfung existiert.
- Test erstellen
- Es wird ein neuer tabellengesteuerter Test in expecco erzeugt, dessen Schritte denen des Polarion Testfalls entsprechen. Diese Schritte bestehen aus leeren Blöcken, in denen dann der automatische Test erstellt werden kann. In der Blockbeschreibung befinden sich Schrittbeschreibungen aus Polarion.
- Test hochladen
- Zum ausgewählten Polarion Testfall kann ein fertiger expecco Test ausgewählt werden, der dann mit diesem verknüpft wird.
- aus Test erstellen
- In Polarion wird zu einem vorhandenen expecco Test ein neuer Testfall erzeugt, der die entsprechenden Schritte enthält. Der expecco Test wird direkt mit dem neuen Testfall verknüpft. Ist in der Übersicht ein Testfall ausgewählt, so kann dieser auf diese Weise auch aktualisiert werden, wodurch der Titel und die Schrittbeschreibung angepasst werden.
Automatische Ausführung von Testläufen[Bearbeiten]
Ein expecco Host, der geplante Testläufe in Polarion automatisch ausführt, lässt sich bei den Einstellungen starten. Hat man sich erfolgreich bei Polarion angemeldet, erscheint hier in der unteren Hälfte eine Übersicht.
Hier kann man sich als Host für ein Projekt registrieren. Voraussetzung dafür ist, dass für dieses Projekt expeccoHost Workitems definiert sind. Beim Registrieren wird ein ein solches Workitem mit der MAC-Adresse des Hosts im entsprechenden Projekt angelegt. Da die Workitems projektspezifisch sind, muss sich der Host für jedes Projekt einzeln registrieren.
In der Tabelle auf der linken Seite werden die Projekte angezeigt, bei denen der Host derzeit registriert ist. Die Farbe gibt dabei an, ob der Host in Polarion freigegeben ist (grün) oder ob er gesperrt ist (rot). Für jedes der Projekt kann durch das Setzen eines Hakens festgelegt werden, ob der Host Testläufe aus diesem Projekt bearbeiten soll oder nicht. Diese Auswahl ist unabhängig davon, ob der Host in Polarion freigeben ist, allerdings kann ein Testlauf nur dann ausgeführt werden, wenn er von beiden Seiten zugelassen ist.
Durch Klicken auf Start wird der Host gestartet. Er sucht sich nun einen Testlauf in Polarion, der von expecco ausgeführt werden soll. Testfälle, die keinen expecco-Status haben, werden je nachdem auf welchen Status der Testlauf in Polarion gesetzt werden geblockt oder übersprungen. Ansonsten wird nach der expecco Testsuite gesucht, in der sich der verknüpfte Test befindet. Damit diese gefunden werden kann, muss der Pfad, an dem die Suite gespeichert ist, in den expecco Einstellungen unter Projektmanagement als Autoimport-Pfad angegeben sein. Die Testschritte des Polarion Testfalls und des expecco Tests werden nur korrekt zugeordnet, wenn die Namen übereinstimmen. Die Ergebnisse des Laufs werden dann in Polarion übertragen sowie als Dateien an den Testfall angehängt. Sind alle Testfälle bearbeitet, wird der Testlauf freigegeben und der nächste gesucht.