JS Code Coverage Debug

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 3 Minuten Lesedauer
  • Mit der Anwendung „JS Code Coverage Debug“ können Administratoren und Anwendungsentwickler die während einer Benutzersitzung ausgelösten Skripts protokollieren und anschließend überprüfen, welche Codezeilen das System ausgeführt hat.

    Benutzer mit der Rolle „js_coverage_debugger“ können Skripts debuggen, ohne Haltepunkte festlegen oder Debug-Meldungen auf dem Bildschirm überprüfen zu müssen. Stattdessen speichert das System Daten zur Skriptverwendung in der Tabelle „JavaScript-Codeabdeckung“ [sys_js_code_coverage]. Jeder JavaScript-Codeabdeckungs-Datensatz enthält Folgendes:
    • Die Benutzersitzung, von der das Skript aufgerufen wurde.
    • Der Skriptdatensatz des aufgerufenen Systems wird anhand von Tabelle, sys_id und Skriptfeld identifiziert.
    • Der vom System aufgerufene Skriptdatensatz wird nach Typ und Name identifiziert.
    • Die Transaktion, die das Skript aufgerufen hat.
    • Die Startzeit der Transaktion.
    • Der Inhalt des hervorgehobenen Skriptfelds, um anzuzeigen, welche Zeilen das System ausgeführt hat.
    Abbildung : 1. Beispiel für die Hervorhebung von Codeabdeckung
    Beispiel für die Hervorhebung von Codeabdeckung

    Hervorhebung durch JS-Codeabdeckung

    Die JS-Codeabdeckung-Anwendung hebt Skriptfelder hervor, um anzuzeigen, ob das System die jeweilige Zeile ausgeführt oder übersprungen hat.

    Abbildung : 2. Beispiel für Code-Hervorhebung
    Beispiel für Code-Hervorhebung

    Die Farbe der Hervorhebung gibt an, wie das System die Codezeile ausgewertet hat.

    Tabelle : 1. Bedeutung der Code-Hervorhebung
    Hervorhebungsfarbe Bedeutung
    Grün Dies ist eine ausführbare Codezeile, die das System während der Sitzung ausgeführt hat.
    Rot Dies ist eine ausführbare Codezeile, die das System aus irgendeinem Grund übersprungen hat. Das System hat eine ausführbare Codezeile möglicherweise übersprungen, weil die erforderlichen Skriptbedingungen nicht erfüllt wurden oder weil die Skriptfunktion nie aufgerufen wurde. Sie können den Script Debugger verwenden, um zu ermitteln, warum das System die Zeile mit ausführbarem Code übersprungen hat.
    Grau Dies ist eine nicht ausführbare Codezeile, z. B. Leerzeichen, Codekommentar oder ein Teil eines Ausdrucks, der auf mehrere Zeilen aufgeteilt ist und nicht alleine ausgeführt werden kann.

    Administratoren und Anwendungsentwickler können diese Informationen verwenden, um gezieltere Debugging-Aktivitäten durchzuführen. Sie können z. B. den Script Debugger verwenden, um zu ermitteln, warum Skriptbedingungen nicht erfüllt wurden.

    JS Code Coverage Debug aktivieren

    Sie können das Plugin „JS Code Coverage Debug“ (com.glide.js.coverage) aktivieren, wenn Ihnen die Administratorrolle zugewiesen ist.

    Vorbereitungen

    Erforderliche Rolle: admin

    Prozedur

    1. Navigieren Sie zu Alle > Systemanwendungen > Alle verfügbaren Anwendungen > Alle.
    2. Suchen Sie das Plugin über die Filterkriterien und die Suchleiste.

      Sie können nach dem Plugin anhand seines Namens oder seiner ID suchen. Wenn Sie kein Plugin finden können, müssen Sie es möglicherweise von einem Mitarbeiter von ServiceNow anfordern.

    3. Wählen Sie Installieren, um den Installationsprozess zu starten.
      Hinweis:
      Wenn die Domain Separation und der delegierte Administrator in einer Instanz aktiviert sind, muss sich der Administrator in der globalen Domäne befinden. Andernfalls wird der folgende Fehler angezeigt: Die Anwendungsinstallation ist nicht verfügbar, da ein anderer Vorgang ausgeführt wird: Plugin-Aktivierung für <Plugin-Name>.
      Nach Abschluss der Installation wird eine Meldung angezeigt.

    Nächste Maßnahme

    Um anzuzeigen, welche Komponenten vom Plugin installiert wurden, aktualisieren Sie das Plugin-Formular, und wählen Sie die zugehörige Liste Plugin-Dateien aus.

    Debuggen mit JS Code Coverage Debug

    Verwenden Sie JS Code Coverage Debug, um eine Benutzersitzung aufzuzeichnen und dann zu überprüfen, welche Skripts und Codezeilen das System ausgeführt hat.

    Vorbereitungen

    Erforderliche Rolle: admin oder js_coverage_debugger

    Prozedur

    1. Navigieren zu Alle > JS-Codeabdeckung – Debugging > Abdeckung aktivieren.
      Das System protokolliert, welche Skripts und Codezeilen das System ausführt, und zeigt Debug-Meldungen für die Sitzung im JS-Codeabdeckungs-Namespace an.
      Debuggen Sie mit Codeabdeckung
    2. Navigieren Sie zu der Tabelle oder Seite, deren Logik Sie testen möchten.
      Navigieren Sie beispielsweise zu Incident > Neu erstellen:.
    3. Lösen Sie das oder die Skripts aus, das bzw. die Sie testen möchten.
      Erstellen Sie beispielsweise einen Incident mit einem zugehörigen CI-Element, um mehrere Business Rules zu testen.
    4. Wenn Sie die Tests abgeschlossen haben, navigieren Sie zu JS-Codeabdeckung – Debugging > Abdeckung deaktivieren.
      Das System beendet die Protokollierung der ausgeführten Skript- und Codezeilen.
    5. Navigieren zu JS-Codeabdeckung – Debugging > Abdeckungsdaten.
      Das System zeigt die Liste der Abdeckungsdaten an, die der aktuellen Benutzersitzung zugeordnet sind.
      Beispieldatensätze für die JavaScript-Codeabdeckung
    6. Wählen Sie das Skript oder die Transaktion aus, das bzw. die Sie überprüfen möchten.
      Tabelle : 2. JavaScript-Codeabdeckung – Felder
      Feld Beschreibung
      Skriptname Zeigt das ausgeführte Skript nach Tabellenname, sys_id-Wert und Skriptfeld an.
      Skriptreferenz Zeigt das ausgeführte Skript nach Skripttyp und -name an.
      Transaktionsname Zeigt die Transaktion, die das Skript aufgerufen hat, nach Thread-ID und URI an.
      Wählen Sie zum Beispiel die Skriptreferenz „Business Rule: Incident-Events“ aus.
      Das System zeigt den JS Code Coverage Debug-Datensatz an.
      JS-Codeabdeckung – Debug-Abschnitt
    7. Überprüfen Sie das Feld Skript, um zu ermitteln, welche Codezeilen das System ausgeführt hat.
      Beispielsweise hat die Business Rule das Event „incident.inserted“ zur Event-Warteschlange hinzugefügt.

    Ergebnisse

    Sie ermitteln, welche Codezeilen das System ausgeführt hat.

    Nächste Maßnahme

    Verwenden Sie die Informationen zur Codeabdeckung, um gezieltere Debugging-Aktivitäten durchzuführen, z. B. Haltepunkte festzulegen und Variablenwerte mit dem Script Debugger zu überprüfen.