In diesem Abschnitt finden Sie einen Beispielbericht, der Testfallergebnisse abruft und sie abhängig von ihrem Status anzeigt.
Der folgende Code-Ausschnitt zeigt den Aufbau eines Java-Skripts mit den erforderlichen Import-Statements.
Der Code zum Abrufen der Daten wird in der Methode execute
implementiert.
Eine detailliertere Beschreibung der Klaros-Testmanagement API finden Sie in
de.verit.klaros.core.model.
import de.verit.klaros.scripting.*; import de.verit.klaros.core.model.*; import java.util.*; public class TestScript implements KlarosScript { public void execute(KlarosContext context) {... } }
Der nächste Schritt besteht darin, die erforderlichen Daten abzurufen. Der folgende Code-Ausschnitt zeigt, wie eine Abfrage zum Abrufen von Testfallergebnissen erstellt werden kann.
StringBuffer query = new StringBuffer(); query.append("select tcr from KlarosTestCaseResult tcr"); List<?> tcr = context.executeQuery(query.toString());
Die Testfallergebnisse werden in einem List
-Objekt zurückgegeben.
Diese Liste muss im Kontext zwischengespeichert werden, damit die Layout-Vorlage darauf zugreifen kann:
context.add("results", tcr);
![]() |
Anmerkung |
---|---|
Weitere Informationen zum Erstellen von Abfragen finden Sie unter HQL-Dokumentation. |
Das List
-Objekt wird im Kontext unter dem Namen results
gespeichert
und kann von der Layout-Vorlage über diesen Namen abgerufen werden.
Falls zusätzliche Daten benötigt werden, führen Sie die entsprechenden Abfragen aus und speichern Sie die
verarbeiteten Daten im Kontext unter jeweils einem anderen Namen.
Die Code-Ausschnitte in diesem Abschnitt zeigen, wie man eine Layout-Vorlage erstellt. Die offizielle Dokumentation zur verwendeten Layout-Sprache finden Sie im SeamPDF Manual. Weitere Informationen zum Objekt-Modell finden Sie unter de.verit.klaros.core.model.
Der folgende Code-Ausschnitt zeigt die Grundstruktur einer PDF-Layout-Vorlage.
Im Element <p:document>
-Elements ist der Inhalt des Berichts enthalten
und in Kapiteln und Abschnitten gruppiert.
<p:document xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:f="http://java.sun.com/jsf/core" xmlns:p="http://jboss.org/schema/seam/pdf" title="Klaros-Testmanagement Test Suite Report" marginMirroring="true" author="#{user.name}" creator="#{user.name}" pageSize="A4"> ... </p:document>
Hier wird der immer im Kontext vorhandene Parameter
de.verit.klaros.core.model.KlarosUser
mittels #{user.name}
verwendet, um den Author des PDF-Dokuments festzulegen.
Der nächste Code-Ausschnitt zeigt, wie die Kopf- und Fußzeilen des Berichts definiert werden können. Hier wird das aktuelle Datum und der de.verit.klaros.core.model.KlarosUser-Parameter im Kontext verwendet.
<f:facet name="header"> <p:font size="8"> <p:header borderWidthBottom="0.1" borderColorBottom="black" borderWidthTop="0" alignment="center"> <p:text value="Example report - generated on #{date} by #{user.name}"/> </p:header> <p:footer borderWidthTop="0.1" borderColorTop="black" borderWidthBottom="0" alignment="center"> <p:text value="Page " /> <p:pageNumber /> </p:footer> </p:font> </f:facet>
Als nächstes wird die Titelseite für den Bericht definiert, die eine kurze Zusammenfassung des Berichts zeigt. Um dieses Beispiel kurzzuhalten, wird nur ein Fragment mit dem Namen und der E-Mail-Adresse des Benutzers angezeigt. Für das vollständige Skript siehe Abschnitt E.3, „Beispiel Layout-Vorlage“.
<p:font style="bold" size="16"> <p:paragraph alignment="center" spacingAfter="5"> <p:text value="#{user.name} (#{user.email})"/> </p:paragraph> </p:font>