Wenn in Ihrem angepassten Code die Schnittstelle IKLog zur Auflistung von Testergebnissen verwendet wird, können Sie die Ergebnisse im Ausführungsprotokoll des Tests prüfen. Wenn Sie Beurteilungen angepasster Prüfpunkte protokollieren, sind diese in der Zeitplan-Gesamtbeurteilung angegeben.
Es folgen einige Beispiele für die Verwendung von angepasstem Code:
In Ihrem angepassten Code verwenden Sie die Schnittstelle IKLog, um die Ergebnisse der Tests aufzulisten. Diese Schnittstelle ist Teil des Pakets "com.ibm.rational.test.lt.logging". Es gibt zwei Typen von IKLog-Methoden:
Wenn Sie angepassten Code zu einem Test hinzufügen, wird Folgendes im Testeditor angezeigt:
Wenn Sie auf Code generieren klicken, wird eine Schablonenklasse für angepassten Code im Ordner "src" des Projekts erstellt. Bevor die Schablonenklasse generiert wird, können Sie einen anderen Paketnamen angeben (wird empfohlen, da sich der angepasste Code sonst in demselben Paket (Test) wie der generierte Testcode befindet) und einen Klassennamen angeben, der die vom Code ausgeführte Funktion bezeichnet. Sie können auch einen vorhandenen angepassten Code wiederverwenden, indem Sie seinen Paket- und Klassennamen eingeben und dann die Klasse durch Klicken auf Code anzeigen öffnen. Wenn Sie beispielsweise test.custom.VerifyCustID als Paket- und Klassenname eingeben, wird der unten dargestellte Code in "src/test/custom/VerifyCustID.java" generiert und im Java-Editor geöffnet.
package test.custom; import com.ibm.rational.test.lt.kernel.logging.IKLog; /** * @author unknown */ public class VerifyCustID implements com.ibm.rational.test.lt.kernel.custom.ICustomCode { /** * Instances of this will be created using the no-arg constructor. */ public VerifyCustID() { } /** * @see com.ibm.rational.test.lt.kernel.custom.ICustomCode#exec(IKLog, java.lang.String[]) */ public String exec(IKLog log, String[] args) { return null; } }
Die Ansicht "Testnavigator" wird standardmäßig in der Perspektive "Test" geöffnet. In der Regel ist dies die beste Ansicht für das Navigieren durch Tests, da eine Vielzahl von Dateien, die für Tester nicht von Bedeutung sind, einschließlich Inhalte des Ordners "src", herausgefiltert werden. Zum Schreiben von angepasstem Code möchten Sie möglicherweise den Standardnavigator oder eine Java-Navigationsansicht öffnen, da Sie dann direkt durch den Code navigieren können. (Sie können angepassten Code aus dem aufrufenden Test heraus öffnen, indem Sie diesen auswählen und auf die Schaltfläche Ansicht klicken.)
Ihre angepassten Logik- und Protokollierungsanweisungen werden im Codeblock exec am unteren Ende eingefügt. Wenn Sie log. in diesen Block eingeben und die Tastenkombination Strg+Leertaste drücken, listet der Java-Editor die IKLog-Methoden auf und zeigt deren Javadoc an. Zum Ändern von Eingabewerten aus dem aufrufenden Test verwenden Sie den Bereich args, der alle Argumente enthält, die Sie beim Hinzufügen des Codes zum Test angegeben haben. Siehe Angepassten Code hinzufügen, Schritte 4 bis 6. Die Anweisung return gibt optional einen Wert an den aufrufenden Test zurück.
Mit "reportMessage" können Sie eine Nachricht direkt in das Ausführungsprotokoll schreiben, wie es unter Einfache Nachricht protokollieren angegeben ist. Die anderen Methoden erfordern den Zugriff auf Klassen, die Ereignisobjekte erstellen. Zum Zugreifen auf diese Klassen fügen Sie eine oder mehrere der folgenden Importanweisungen hinzu:
import org.eclipse.hyades.test.common.event.ExecutionEvent import org.eclipse.hyades.test.common.event.MessageEvent import org.eclipse.hyades.test.common.event.VerdictEvent
Wenn Sie angepassten Code, der die oben angegebenen Importanweisungen enthält, zu einem Test hinzufügen, der sich in einem Projekt befindet, in dem noch nie ein Test ausgeführt wurde, können Importfehler auftreten. Wenn jedoch mindestens ein Test in dem Projekt bereits ausgeführt wurde, treten diese Fehler nicht auf. Der Grund dafür ist, dass beim Ausführen eines Tests bekannte Bibliotheken, die für die Ausführung erforderlich sind, einschließlich der in den Importanweisungen benannten Klassen, zum Projekterstellungspfad hinzugefügt werden.
Die Klasse "VerdictEvent" ist für angepassten Code von besonderer Bedeutung, da Beurteilungen, die mit der Methode "reportVerificationPoint" im Ausführungsprotokoll aufgezeichnet werden, in der PASSIERT-/FEHLSCHLAG-Beurteilung des Tests widergespiegelt werden. Die Beurteilung eines Zeitplans lautet nur PASSIERT, wenn alle Tests erfolgreich ausgeführt oder bei keinem Test Beurteilungen zurückgemeldet werden. Das Beispiel unter Beurteilungsereignis protokollieren zeigt, wie ein Beurteilungsereignis erstellt und protokolliert wird.
Einstellung im Zeitplan-Editor | IKLog-Literal |
---|---|
Alle | HISTORY_ALL |
Keine | HISTORY_NONE |
Zeitplan | HISTORY_SCHEDULE |
Seite | HISTORY_PAGES |
Anforderung | HISTORY_REQUESTS |
Basierend auf den Einstellungen im Zeitplan-Editor werden Ergebnisse aus dem Ausführungsprotokoll herausgefiltert. Daher ist es möglich, dass ein Ergebnis, das vom angepassten Code protokolliert wird, nicht im Ausführungsprotokoll enthalten ist. Verwenden Sie "getHistoryLevel", um die Einstellung der Protokollebene abzurufen, und "wouldReportHistory", um ein Ergebnis basierend auf der Einstellung aufzulisten. (Wenn Sie einen einzelnen Test direkt ausführen, lautet die Einstellung HISTORY_ALL.)
Übergeordnetes Thema: Tests mit angepasstem Java-Code erweitern