Debugging für angepassten Code ausführen

Dieses Beispiel zeigt das Debuggen von angepasstem Code durch Hinzufügen eines Unterbrechungspunkts. Es zeigt einen Mustercode zum Hinzufügen eines Unterbrechungspunkts. Diese Art des Debuggens von angepasstem Code gilt nur für einen Zeitplan.

Vorgehensweise

  1. Starten Sie IBM® Rational Performance Tester und erstellen Sie ein Leistungstestprojekt mit Namen MyProject.
  2. Erstellen Sie einen HTTP-Test mit Namen MyTest, indem Sie einen Besuch bei http://<hostname>:7080/ aufzeichnen.
    Anmerkung: Vor dem Zugriff auf die URL müssen Sie sicherstellen, dass Rational Performance Tester aktiv ist. Die URL gibt einen erwarteten HTTP 404-Fehler zurück.
    Ein Test mit einer Schleife von fünf Iterationen.
  3. Erweitern Sie die erste Anforderung und klicken Sie auf das Antwortelement.
  4. Klicken Sie im Abschnitt "Testelementdetails" mit der rechten Maustaste das Feld Inhalt an. Klicken Sie dann auf Feldreferenz erstellen.
  5. Geben Sie den Referenznamen ein und klicken Sie auf OK.
  6. Klicken Sie auf die erste Seite und dann auf Hinzufügen > Angepasster Code.
  7. Klicken Sie im Abschnitt Argumente in "Testelementdetails" auf Hinzufügen.
  8. Erweitern Sie die Datenquelle für die Suchergebnisseite, wählen Sie den Referenznamen aus, den Sie in Schritt 5 erstellt haben, und klicken Sie auf Auswählen.
  9. Klicken Sie auf Code generieren. Es wird eine neue Registerkarte mit generiertem Code angezeigt.
  10. Fügen Sie den folgenden Code in die Methode exec() ein:
    ITestLogManager history = tes.getTestLogManager();
    if (args.length > 0) {
        if (args[0].indexOf("Invester Relations") != -1) {
            history.reportMessage("First page failed.  Bail loop!");
            tes.getLoopControl().continueLoop();
        }
    }
    Wichtig:
    • Korrigieren Sie die Anführungszeichen (falls vorhanden) so, dass sie gerade sind und der Compiler keine Warnung mehr ausgibt.
    • Zum Beheben der Compilerwarnungen beim Importieren einer Klasse drücken Sie Strg+Umschalttaste+O.

    Der Code sieht in etwa wie folgt aus:

    Code zum Einfügen eines Unterbrechungspunkts

  11. Zum Festlegen eines Unterbrechungspunkts klicken Sie an einer beliebigen Stelle in der Zeile args[0].indexOf. Bewegen Sie den Zeiger zum äußerst linken Bereich des Texteditorfensters und doppelklicken Sie mit dem Zeiger horizontal auf dieselbe Zeile. Im äußerst linken Bereich des Fensters wird eine blaue Schaltfläche angezeigt. Diese gibt an, dass der Unterbrechungspunkt festgelegt wurde.
    Unterbrechungspunkt hinzufügen
  12. Speichern Sie den angepassten Code und dann den Test.
  13. Erstellen Sie einen neuen Zeitplan mit Namen Schtest.
    1. Legen Sie in Schtest die Anzahl der auszuführenden Benutzer auf den Wert 1 fest.
    2. Klicken Sie auf Benutzergruppe 1 und dann auf Hinzufügen > Test. Wählen Sie den Test MyTest aus und klicken Sie auf OK.
    3. Klicken Sie auf Benutzergruppe 1 und dann auf die Schaltfläche Diese Gruppe an den folgenden Positionen ausführen.
    4. Klicken Sie auf Hinzufügen > Neu hinzufügen.
    5. Geben Sie im Fenster Neue Position die folgenden Informationen ein:
      1. Geben Sie in Hostname den Namen des lokalen Hosts ein.
      2. Geben Sie in Name die Debuggingposition ein.
      3. Geben Sie in Implementierungsverzeichnis als Verzeichnis C:\mydeploy ein.
      4. Klicken Sie auf Fertigstellen.
    6. Speichern Sie den Zeitplan.
  14. Klicken Sie im Testnavigator mit der rechten Maustaste die Debuggingposition an und klicken Sie auf Öffnen.
  15. Klicken Sie auf die Registerkarte Allgemeine Eigenschaften und dann auf Hinzufügen.
  16. Geben Sie im Feld Eigenschaftsname den Wert RPT_VMARGS und fügen Sie im Feld Eigenschaftswert die folgenden durch ein Leerzeichen getrennte Werte ein.
    -Xdebug
    -Xnoagent
    -Djava.compiler=NONE
    -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
    Eigenschaften für RPT_VMARGS
  17. Speichern Sie die Position.
  18. Ordnen Sie den Debugger dem Zeitplanausführungsprozess zu.
    1. Führen Sie den Zeitplan aus. Da der Zeitplan den Wert für die Debuggingposition verwendet, wird der Prozess am Anfang angehalten, damit Sie den Debugger dem Ausführungsprozess zuordnen können.
    2. Klicken Sie auf Window > Open Perspective > Other > Debug.
    3. Klicken Sie auf Run > Debug Configurations.
    4. Klicken Sie im Fenster Debug Configurations mit der rechten Maustaste Remote Java Application an und klicken Sie dann auf New.
    5. Klicken Sie auf Debug. Im Fenster "Debug" wird eine Liste der aktiven Threads angezeigt und die Zeitplanausführung wird am Debug-Unterbrechungspunkt angehalten.
    6. Wenn Sie diesen Vorgang zum ersten Mal ausführen, müssen Sie möglicherweise die Quellenposition angeben, um den angepassten Java-Code zu sehen. Führen Sie hierzu die folgenden Schritte aus:
      1. Klicken Sie auf Edit Source Lookup Path und dann auf Add.
      2. Klicken Sie auf Workspace Folder > OK.
      3. Erweitern Sie nun "MyProject", wählen Sie den Ordner "src" aus und klicken Sie auf OK. Die Zeitplanausführung wird am angegebenen Unterbrechungspunkt gestoppt.
        Die Ansicht zeigt den Unterbrechungspunkt, an dem die Ausführung gestoppt wurde.

Feedback