Testschritte für benutzerdefinierte UIs

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 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:
    Now UI wird von den benutzerdefinierten UI-Testschritten nicht unterstützt.

    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. Benutzerdefinierte 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 benutzerdefinierten 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 (Benutzerdefinierte UI)

    Einstellbare Komponenten haben einen Datentyp, durch den festgelegt wird, welche Werte von einem benutzerdefinierten UI-Testschritt eingestellt werden können. 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 anklickbare Komponente ist ein UI-Element, mit dem Benutzer durch Klicken interagieren können, z. B. Eingaben vom Typ Kontrollkästchen oder Auswahl. 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 benutzerdefinierter 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 Automated Test Framework -spezifischen HTML-Attributen. 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 Secure Coding Guide for Instance Developers“
    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 mit Beispieltest mit sieben Testschritten.

    Version und Reihenfolge der benutzerdefinierten UI-Komponente

    Wenn Sie eine Komponente in einem der benutzerdefinierten UI-Testschritte auswählen, wird möglicherweise die benutzerdefinierte UI-Version angezeigt. Wenn mehrere doppelte Komponenten vorhanden sind, wird die Reihenfolge der Komponenten angezeigt.Abbildung, die die Reihenfolge für doppelte Komponenten zeigt
    Hinweis:
    Die benutzerdefinierte UI-Version wird nur angezeigt, wenn mindestens zwei verschiedene Komponenten mit unterschiedlichen benutzerdefinierten UI-Versionen vorhanden sind.
    Hinweis:
    Die Reihenfolge wird nur angezeigt, wenn doppelte Komponenten im Dropdown-Menü der Komponenten vorhanden sind. Sie können sie entsprechend der angezeigten Reihenfolge disambiguieren.
    Hinweis:
    Sowohl die benutzerdefinierte UI-Version als auch die Reihenfolge werden angezeigt, wenn mehrere doppelte Komponenten aus verschiedenen Versionen vorhanden sind.

    Identifizieren von Komponenten

    Implementieren Sie eine alternative Methode zum Identifizieren Ihrer Komponente mithilfe des Attributs sn-atf-id. Dies ist nützlich, wenn das name- oder id-Attribut Ihrer Komponente dynamisch ist und sich bei jeder Testausführung ändert. Fügen Sie das Attribut sn-atf-id mit einem konsistenten Wert hinzu, damit ATF Ihre Komponente beim Ausführen 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:
    Wenn Sie ab Release Rome 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.

    Identifizierung von ATF-Komponenten verbessern

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

    Wenn eine Komponente das Attribut sn-atf-areahat, 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.
    Abbildung mit Bezeichnungspfad der Komponente
    Hinweis:
    Wenn Sie mehrere gleichnamige Bezeichnungswerte haben, hilft Ihnen der Bezeichnungspfad, die richtige Komponente zu identifizieren.
    Hinweis:
    Wenn eine Komponente kein sn-atf-area- Attribut oder einen Bezeichnungspfad aufweist, wird der Wert als Standard angezeigt.
    Abbildung mit dem Standardwert von Komponenten
    Wenn Sie die erforderliche Komponente aus der Liste auswählen und auf Absendenklicken, wird auch die Beschreibung des Testschritts mit weiteren Details aktualisiert.
    Abbildung mit aktualisierter Beschreibung eines übermittelten Testschritts