Testschritte für benutzerdefinierte UIs

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 7 Minuten Lesedauer
  • Testen Sie angepasste Benutzeroberflächen wie UI-Seiten und UI-Makros, indem Sie deren HTML- und JavaScript-Seitenkomponenten abrufen und die von ihnen unterstützten Testaktionen identifizieren.

    Testschritte für benutzerdefinierte UIs erfordern, dass das Automated Test Framework die testbaren Komponenten von einer Zielwebseite abruft und identifiziert.

    Hinweis:
    Next UI Experience-Seiten werden von anwenderdefinierten UI-Testschritten nicht unterstützt, insbesondere nicht von konfigurierbaren Arbeitsbereichen (mit Ausnahme von Formularschritten) und UI Builder.

    Testbare Komponenten

    Testbare Seitenkomponenten bestehen aus Standard-HTML und JavaScript mit folgenden Eigenschaften.

    Werden durch Benutzerinteraktion festgelegt oder angeklickt
    Testbare Seitenkomponenten ermöglichen es Benutzern, einen Wert festzulegen oder darauf zu klicken.
    Sind vom Document Object Model (DOM) aus zugänglich
    Testbare Seitenkomponenten sind vom DOM aus zugänglich und unterstützen die JavaScript-Bearbeitung des DOM. Testschritte für benutzerdefinierte UIs können nicht auf Seitenkomponenten im Schatten-DOM zugreifen.
    Sind für JavaScript zugänglich
    Testbare Seitenkomponenten sind für JavaScript zugänglich. Anwenderdefinierte UI-Testschritte können nicht auf Seitenkomponenten zugreifen, die direkt mit dem Betriebssystem interagieren, z. B. Dateifelder, oder Nicht-HTML-Inhalte wie Excel- oder PDF-Dateien anzeigen.
    Neue Browserregisterkarten oder -fenster werden von anwenderdefinierten UI-Testschritten nicht unterstützt.
    Sind nicht von benutzerdefinierten UI-Tests ausgeschlossen
    Testbare Seitenkomponenten sind nicht von benutzerdefinierten UI-Tests ausgeschlossen. Das Automated Test Framework schließt Seitenkomponenten aus, die bereits von anderen Testschrittkategorien getestet werden können, und schließt auch Seitenkomponenten aus, die mit Now Platform-Eigenschaften verbunden sind.
    Sind für den Seiteninspektor zugänglich
    Testbare Seitenkomponenten müssen Ergebnisse liefern, wenn sie vom Seiteninspektor aus betrachtet werden. Testdesigner können den Seiteninspektor verwenden, um die überprüfbaren Komponenten einer Seite zu identifizieren.
    Beispiele für testbare Seitenkomponenten umfassen diese UI-Elemente.
    • Schaltflächen
    • Links
    • Seitentext
    • UI-Steuerelemente
    • UI-Makros
      • ui_date
      • ui_date_time
      • ui_reference
    • UI-Seiten
    • Assistenten

    Beispiele für nicht testbare Seitenkomponenten umfassen diese UI-Elemente.

    Tabelle : 1. Beispiel für nicht testbare Seitenkomponenten
    Grund nicht testbar Nicht testbare Seitenkomponenten
    Sind nicht einstellbar oder anklickbar Versteckte Steuerelemente
    HTML-Kommentare
    HTML-Layoutelemente wie div, section und span.
    HTML-Skriptelemente
    Sind aus DOM nicht zugänglich Dashboards
    Bilder
    Listen
    Berichte
    Schatten-DOM
    Sind für JavaScript nicht zugänglich Excel-Dateien
    Dateifelder
    PDF-Dateien
    Sind Now Platform-Eigenschaften Flow Designer
    Studio
    Upgradeüberwachung
    Sind durch andere Testschrittkategorien testbar Formular-Feldbezeichnungen
    Formular-Feldwerte
    Servicekatalog
    Arbeitsbereiche

    Einstellbare Seitenkomponenten

    Eine einstellbar Komponente ist ein UI-Element, das über einen dynamischen Wert verfügt, beispielsweise ein Texteingabefeld. Einstellbare Komponenten unterstützen diese Testaktionen und Testschritte.

    Tabelle : 2. Testoptionen für einstellbare Komponenten
    Aktionen für Seiteninspektoren Testschritte für benutzerdefinierte UIs
    Komponentenwert festlegen Komponentenwerte festlegen (Benutzerdefinierte UI)
    Komponentenwert abrufen Bestätigungstext auf Seite (Benutzerdefinierte UI)
    Komponentenwertvalidierung (Benutzerdefinierte UI)
    Ist die Komponente deaktiviert? Komponentenstatusvalidierung (Anwenderdefinierte UI)

    Einstellbare Komponenten haben einen Datentyp, der bestimmt, welche Werte ein anwenderdefinierter UI-Testschritt festlegen kann. Beispielsweise kann eine Seitenkomponente, die eine Referenz auf einen bestimmten Datensatz anzeigen soll, einen Referenzdatentyp haben, der nur Sys-ID-Werte anzeigt.

    Automated Test Framework ermöglicht UI-Entwicklern, einen Datentyp anzugeben, der bei benutzerdefinierten UI-Tests verwendet werden soll. UI-Entwickler können Seitenkomponenten einen Datentyp zuweisen, um sicherzustellen, dass ein Testschritt einen gültigen Wert festlegt. Diese Datentypen werden unterstützt.
    • Datum
    • Datum/Uhrzeit
    • Referenz

    Weitere Informationen finden Sie unter Datentyp der Komponente überschreiben.

    Anklickbare Seitenkomponenten

    Eine klickbare Komponente ist ein UI-Element, mit dem Anwender durch Klicken interagieren können, z. B. Eingaben vom Typ „Kontrollkästchen“ oder „Optionsfeld“. Anklickbare Komponenten unterstützen diese Testaktionen.

    Tabelle : 3. Testoptionen für anklickbare Komponenten
    Aktionen für Seiteninspektoren Testschritte für benutzerdefinierte UIs
    Anklickbare Komponente Klickkomponente (Benutzerdefinierte UI)
    Komponentenwert abrufen Bestätigungstext auf Seite (Benutzerdefinierte UI)
    Komponentenwertvalidierung (Benutzerdefinierte UI)
    Ist die Komponente deaktiviert? Komponentenstatusvalidierung (Benutzerdefinierte UI)

    Anklickbare Komponenten haben keinen Datentyp, da sie keine dynamischen Werte haben.

    Abgerufene Seitenkomponenten

    Automated Test Framework speichert eine Liste der abgerufenen Seitenkomponenten für jede benutzerdefinierte UI-Seite, die Sie testen. Testschritte für benutzerdefinierte UIs zeigen die Liste der abgerufenen Komponenten aus den Feldern Komponente und Komponentenwerte an.

    Standardmäßig ist die Liste der Seitenkomponenten statisch und wird nur aktualisiert, wenn Testdesigner manuell auf Komponenten abrufen klicken. Administratoren können die Systemeigenschaft sn_atf.page_data_capture.enabled aktivieren, um die Liste der Seitenkomponenten jedes Mal zu aktualisieren, wenn ein anwenderdefinierter UI-Testschritt ausgeführt wird. Durch die Aktivierung dieser Eigenschaft während des Testdesigns wird sichergestellt, dass Ihre Testdesigner immer Zugriff auf die aktuellste Liste der Seitenkomponenten haben. Durch Deaktivieren dieser Eigenschaft nach Abschluss des Testdesigns können Ihre Tests schneller ausgeführt werden, da Testschritte die zuvor abgerufene Liste der Seitenkomponenten verwenden können.

    Das Now Platform behandelt die Liste der abgerufenen Seitenkomponenten als Daten und schließt sie nicht in Update-Sets oder Anwendungsdateien ein. Beim Übertragen von Tests von einer Instanz auf eine andere müssen Testdesigner die Seitenkomponenten erneut manuell abrufen.

    Designüberlegungen

    Folgen Sie diesen Designüberlegungen, wenn Sie benutzerdefinierte UI-Seiten und Seitenkomponenten testen.

    Mit dem Seiteninspektor testbare Seitenkomponenten identifizieren
    Der Seiteninspektor bestimmt, welche Seitenkomponenten für benutzerdefinierte UI-Tests verfügbar sind. Für den Seiteninspektor nicht verfügbare Seitenkomponenten stehen für benutzerdefinierte UI-Tests nicht zur Verfügung.
    Zur benutzerdefinierten UI navigieren, die Sie testen möchten
    Verwenden Sie vorhandene Testschritte, um zur benutzerdefinierten Ziel-UI zu navigieren. Verwenden Sie zum Testen eines Knowledge Base-Artikels die vorhandenen Testschritte, um zu einem Modul zu navigieren oder einen vorhandenen Datensatz zu öffnen. Die meisten benutzerdefinierten UI-Tests erfordern die Verwendung vorhandener Testschrittkategorien als Teil des Tests.
    Mit dem Komponentenbereich Seitenkomponenten identifizieren
    Der Komponentenbereich beschreibt das HTML-Layoutelement, das die Komponente enthält, z. B. ein Element <div> oder <section>. Der Bereich hilft Testdesignern bei der Unterscheidung zwischen Komponenten, indem der Ort im Seitenlayout angegeben wird.
    Eine benutzerdefinierte UI anstatt eine Now Platform-UI testen
    Das Automated Test Framework verhindert das Testen von benutzerdefinierten UIs mit Now Platform-Eigenschaften. Sie können beispielsweise keine Dashboards oder grafischen Designer testen. Erstellen Sie stattdessen Tests, um Ihre benutzerdefinierten UI-Seiten und -Elemente zu testen, da Sie diese UIs direkt steuern können.
    Mit HTML-Attributen die Testeigenschaften von Seitenkomponenten überschreiben
    Ändern Sie die Testeigenschaften einer bestimmten Seitenkomponente mithilfe von HTML-Attributen, die für Automated Test Frameworkspezifisch sind. Weitere Informationen finden Sie unter Komponententestaktionen überschreiben.
    Seitenkomponenten erneut abrufen, wenn Sie Tests in eine andere Instanz verschieben
    Testschritte für benutzerdefinierte UIs speichern UI-Komponenten nicht als Metadaten. Tester müssen die Seitenkomponenten erneut manuell abrufen, wenn Tests zwischen Instanzen verschoben werden.

    Beispiel für Testen einer benutzerdefinierten UI

    Sie können die Liste der abgerufenen Komponenten verwenden, um Testschritte für benutzerdefinierte UIs zu entwerfen. Angenommen, Sie möchten einen Knowledge Base-Artikel überprüfen und kommentieren. Ein Knowledge Base-Artikel enthält mehrere Seitenkomponenten, für die zum Testen Testschritte für benutzerdefinierte UIs erforderlich sind.

    Abbildung : 1. Beispiel Knowledge Base-Artikelseite
    Seite mit KB0011110 „ServiceNow-Leitfaden zur sicheren Codierung für Instanzentwickler“
    Für diese Seitenkomponenten sind beispielsweise Testschritte für benutzerdefinierte UIs erforderlich.
    1. Die Anzahl der Artikelansichten.
    2. Die Schaltflächen zum Markieren des Artikels als Hilfreich.
    3. Der Textbereich für Kommentar abgeben.
    In diesen Schritten werden Tests für benutzerdefinierte UIs für einen Knowledge Base-Artikel veranschaulicht. Der Beispieltest besteht aus diesen vorhandenen und benutzerdefinierten UI-Testschritten.
    1. Zu Modul navigieren. Navigieren Sie zum Modul „Veröffentlicht“ in der Anwendung „Knowledge“.
    2. Bestehenden Datensatz öffnen. Öffnen Sie das Formular „Knowledge“ mit der ID „Knowledge: KB0011110“.
    3. Klicken Sie auf eine UI Action. Klicken Sie auf die UI Action „Artikel anzeigen“ im Formular „Knowledge“.
    4. Bestätigungstext auf Seite (Benutzerdefinierte UI). Bestätigung, dass sich der Text „Entwickler“ auf der Seite befindet.
    5. Komponentenwerte festlegen (Benutzerdefinierte UI)an. Legen Sie die Komponenten auf der Seite wie folgt fest: „Textarea <textarea> [article_comments]“ = Mit aktuellem Artikel aktualisieren und nicht mit URL zum Artikel an anderer Stelle.
    6. Klickkomponente (Benutzerdefinierte UI)an. Klicken Sie auf die Komponente: „Schaltfläche <button>: Kommentar“.
    7. Bestätigungstext auf Seite (Benutzerdefinierte UI). Bestätigen Sie, dass sich der Text „Mit aktuellem Artikel aktualisieren und nicht mit URL zum Artikel an anderer Stelle“ auf der Seite befindet.
    Abbildung : 2. Beispiel für Testschritte für einen Knowledge Base-Artikeltest
    Screenshot, der einen Beispieltest mit sieben Testschritten zeigt.

    Version und Reihenfolge der anwenderdefinierten UI-Komponente

    Wenn Sie in einem der anwenderdefinierten UI-Testschritte eine Komponente auswählen, wird möglicherweise die Version der anwenderdefinierten UI angezeigt. Wenn mehrere doppelte Komponenten vorhanden sind, wird die Reihenfolge der Komponenten angezeigt.

    Bild, das die Reihenfolge für doppelte Komponenten zeigt

    Hinweis:
    • Die Version der anwenderdefinierten UI wird nur angezeigt, wenn mindestens zwei verschiedene Komponenten mit unterschiedlichen Versionen der anwenderdefinierten UI vorhanden sind.
    • Die Reihenfolge wird nur angezeigt, wenn im Dropdown-Menü für Komponenten doppelte Komponenten vorhanden sind. Sie können sie entsprechend der angezeigten Reihenfolge eindeutiger machen.
    • Sowohl die anwenderdefinierte UI-Version als auch die Reihenfolge werden angezeigt, wenn mehrere doppelte Komponenten aus verschiedenen Versionen vorhanden sind.

    Identifizierende Komponenten

    Implementieren Sie eine alternative Methode zur Identifizierung Ihrer Komponente, indem Sie das Attribut sn-atf-id verwenden. Dies ist nützlich, wenn das Attribut name oder id Ihrer Komponente dynamisch ist und sich bei jeder Ausführung eines Tests ändert. Fügen Sie das Attribut sn-atf-id mit einem konsistenten Wert hinzu, damit ATF Ihre Komponente bei der Ausführung eines Tests identifizieren kann. Außerdem können Sie Ihre Komponente beim Erstellen eines Tests identifizieren. Zum Beispiel in einer Schaltflächenkomponente
    <button sn-atf-id="consistentValue">Test</button>
    Hinweis:
    Ab Release Rome : Wenn Sie genau eine Komponente auf der Seite haben, die über das Attribut sn-atf-id verfügt, findet ATF diese Komponente unabhängig von anderen Attributen in dieser Komponente.

    Verbessern Sie die Identifizierung von ATF-Komponenten

    Identifizieren Sie Ihre Komponente anhand des Bezeichnungspfads, der in der Spalte „Seitenbereich“ enthalten ist. Ab Release Rome ist die Eigenschaft sn_atf.element.use_label_path standardmäßig auf „true“ festgelegt.

    Wenn eine Komponente über das Attribut sn-atf-area verfügt, zeigt die Spalte Seitenbereich den Wert sn-atf-area an. Wenn das Attribut sn-atf-area nicht vorhanden ist, wird der Bezeichnungspfad für diese Komponente in der Spalte Seitenbereich angezeigt.

    Bild, das den Bezeichnungspfad der Komponente zeigt

    Hinweis:
    Wenn Sie mehrere identisch benannte Bezeichnungswerte haben, hilft Ihnen der Bezeichnungspfad, die richtige Komponente zu identifizieren. Wenn eine Komponente kein Attribut sn-atf-area oder keinen Bezeichnungspfad hat, wird der Wert als Standard angezeigt.

    Bild, das den Standardwert von Komponenten zeigt

    Wenn Sie die erforderliche Komponente aus der Liste auswählen und auf Absendenklicken, wird auch die Beschreibung des Testschritts mit weiteren Details aktualisiert.

    Bild, das eine aktualisierte Beschreibung eines eingereichten Testschritts zeigt