Testen Sie Ihre Apps mit dem ATF

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 5 Minuten Lesedauer
  • Mit dem Automated Test Framework (ATF) können Sie automatisierte Tests erstellen und ausführen, um zu bestätigen, dass Ihre Instanz nach einer Änderung funktioniert. Beispielsweise nach einem Upgrade, während der Anwendungsentwicklung oder beim Bereitstellen von Instanzkonfigurationen mit Update-Sätzen. Überprüfen Sie die Ergebnisse fehlgeschlagener Tests, um die Changes zu identifizieren, die den Fehler verursacht haben, und die Changes, die Sie überprüfen sollten.

    Hinweis:
    Standardmäßig ist die Systemeigenschaft zum Ausführen automatisierter Tests deaktiviert, um zu verhindern, dass Sie sie versehentlich in einem Produktionssystem ausführen. Führen Sie Tests nur für Entwicklungs-, Test- und andere Instanzen außerhalb der Produktion aus, um Datenbeschädigungen und -ausfälle zu vermeiden. Weitere Informationen finden Sie in diesem ATF-Übersichtsvideo.

    Informationen zur Entwicklerschulung finden Sie unter Verwenden von Automated Test Framework auf der ServiceNow Developer Site.

    Vorteile

    Automated Test Framework bietet Change Managern und Entwickler diese Vorteile.
    • Reduzieren Sie den Upgrade- und die Entwicklungszeitaufwand, indem Sie manuelle Tests durch automatisierte Tests ersetzen.
    • Erstellen Sie Tests einmalig und verwenden Sie sie erneut in verschiedenen Kontexten und mit verschiedenen Testdatensätzen.
    • Halten Sie die Testinstanzen sauber, indem Sie die Testdaten und die nach jedem Testlauf vorgenommenen Änderungen zurücksetzen.
    • Erstellen Sie Testsuites, um Tests in Batches zu organisieren und auszuführen.
    • Planen Sie Testsuite-Läufe.
    • Aktivieren Sie nicht technische Testdesigner, um Tests für die Standard-Now Platform-Funktionalität zu erstellen.
    • Reduzieren Sie die Testdesignzeit durch Kopieren von Schnellstarttests und Testreihen.
    • Erstellen Sie benutzerdefinierte Testschritte, um die Testabdeckung zu erweitern.

    Automated Test Framework-Datensätze und Komponenten

    Das Automated Test Framework besteht aus diesen Datensätzen und Komponenten.

    Test

    Ein Test ist eine logische Gruppierung verwandter automatisierter Testschritte, die einige Funktionalitäten oder Funktionen überprüfen. Jeder Test ist ein Datensatz in der Testtabelle [sys_atf_test]. Testdesigner erstellen normalerweise einen Test, um eine Funktion oder eine Gruppe zugehöriger Funktionen zu überprüfen. Zum Beispiel validiert der Test CSM: Produktfall erstellen die Erstellung von Produktfalldatensätzen. Jeder Test enthält eine zugehörige Liste mit Testschritten und Testergebnissen.

    Testsuite

    Eine Testsuite ist eine Sammlung von Tests, die in einer bestimmten Reihenfolge ausgeführt werden. Testdesigner erstellen normalerweise eine Testsuite, um eine Anwendung oder eine Gruppe zugehöriger Funktionen zu testen. Zum Beispiel validiert die Testsuite CSM: Case Management die Funktionalität der Anwendung „Customer Service Management“. Testdesigner können die Ausführung von Testsuites planen und alle erforderlichen Client-Test Runner starten.

    Schnellstarttest

    Ein Schnellstarttest ist ein Test oder eine Test-Suite, die mit den Demodaten einer Anwendung installiert wird. Verwenden Sie Schnellstarttests als Vorlagen, um eigene Tests und Testsuites zu erstellen. Weitere Informationen finden Sie in diesem Übersichtsvideo zum Schnellstarttest.

    Testschritt

    Ein Testschritt kombiniert eine Schrittkonfiguration mit den Laufzeit-Testdaten, die zur Ausführung eines Schrittes erforderlich sind. Der Testschritt gibt immer die Reihenfolge an, in der er im Test abläuft. Testschritte haben eine eigene zugehörige Liste mit zugehörigen Ergebnissen. Jeder Testschritt ist ein Datensatz in der Testschritttabelle [sys_atf_step], die eine Testaktion, die Schrittkonfiguration und eine Ausführungsreihenfolge angibt. Testdesigner fügen Testtests Testschritte hinzu, um die Funktionalität zu überprüfen. Zum Beispiel nimmt der erste Testschritt des Tests CSM: Produktfall erstellen die Identität des Demo-Benutzers John Jason an, der für Case Management autorisiert ist.

    Schrittkonfiguration

    Eine Schrittkonfiguration ist eine spezifische Testaktion, die Automated Test Framework ausführen kann. Schrittkonfigurationen enthalten keine Laufzeit-Testdaten und können nur ausgeführt werden, wenn Testdesigner sie als Teil eines Testschritts hinzufügen. Jede Schrittkonfiguration ist ein Datensatz in der Testschrittkonfigurationstabelle [sys_atf_step_config], die die Eingabevariablen angibt, die zum Ausführen der Schrittkonfiguration verwendet werden, und die Ausgabevariablen, die für andere Schrittkonfigurationen verfügbar sind. Zum Beispiel ermöglicht die Schrittkonfiguration Identität annehmen es einem Test, die Identität eines anderen Benutzers anzunehmen.

    Automated Test Framework stellt eine Standardliste von Schrittkonfigurationen für die meisten Anwendungsfälle bereit und ermöglicht Testdesignern, ihre eigenen benutzerdefinierten Schrittkonfigurationen zu erstellen.

    Schrittvariable

    Eine Schrittvariable speichert schrittspezifische Eingabe- und Ausgabewerte. Zum Beispiel enthält die Schrittkonfiguration Ein neues Formular öffnen Variablen, um die Namen der Tabellen- und Formularansicht anzugeben. Verwenden Sie Schrittvariablen, um ein bestimmtes Testschrittziel anzugeben oder Informationen an andere Testschritte zu übergeben.

    Testergebnis

    Ein Testergebnis speichert die Ausgabe eines Test- oder Testsuite-Laufs. Jedes Testergebnis ist ein Eintrag in der Testergebnistabelle [sys_atf_test_result], in der die Dauer des Testlaufs, der Status des Tests und, sofern verfügbar, Screenshots angegeben sind. Verwenden Sie Testergebnisse, um fehlgeschlagene oder nicht laufende Tests zu identifizieren, und verwenden Sie die Testprotokolle, um weitere Informationen zu Testergebnissen anzuzeigen. Standardmäßig löscht das System Test- und Testsuite-Ergebnisse 30 Tage nach ihrer Erstellung, es sei denn, Sie aktivieren die Option, das Testergebnis auf unbestimmte Zeit beizubehalten.

    Schrittergebnis

    Ein Schrittergebnis speichert die Ausgabe eines Testschrittlaufs. Jedes Schrittergebnis ist ein Datensatz in der Schrittergebnistabelle [sys_atf_test_result_step], die den Status des Testschritts, eine Zusammenfassung der Ausgabe und ein vollständiges Protokoll der vom Testschritt generierten Ausgabe angibt. Verwenden Sie Schrittergebnisse, um Fehler und Funktionen zu identifizieren, die überprüft werden müssen.

    Assert-Typ

    Das Feld Assert-Typ gibt die Bedingungen an, die erfüllt sein müssen, damit ein Test bestanden wird. Testdesigner können mit Assertionen angeben, ob die Ergebnisse eines Vorgangs erwartet oder unerwartet sind. Angenommen Sie möchten testen, dass ein Datensatz nicht aktualisiert werden kann. In diesem Fall fügen Sie einen Testschritt „Datensatz eingefügt“ hinzu und setzen das Feld Assert-Typ auf Datensatz wurde nicht eingefügt. Der Test wird bestanden, wenn die Datensatzeinfügung fehlschlägt.

    Einige Testschrittkategorien, die Schritte mit einem Feld Assert-Typ enthalten, umfassen:

    • Kategorie „Server“: Feststellen, welche CRUD-Vorgänge bewirken, dass ein Test erfolgreich ist oder nicht.
    • Kategorie „Benutzerdefinierte UI“: Feststellen, welche Komponentenzustände bewirken, dass ein Test erfolgreich ist oder nicht, und ob sichtbarer Text dazu führt, dass ein Test erfolgreich ist oder nicht.
    • Formulare in der Serviceportal-Kategorie: Feststellen, ob ein Formular aufgrund von Validierungsfehlern im Browser abgebrochen wurde oder ein erfolgreich an den Server übermitteltes Formular den Test bestanden hat.

    Client-Test Runner

    Ein Client-Test Runner ist eine Browser-Registerkarte, die Testschritte auf der Client-Seite innerhalb einer Now Platform-Benutzeroberfläche ausführt. Client-Test Runner benötigen eine Browser-Registerkarte. Wenn beim Ausführen eines Tests kein Client-Test Runner verfügbar ist, werden Sie vom System aufgefordert, einen zu öffnen. Tester können einen Client-Test Runner manuell starten oder einen vorhandenen Client-Test Runner auswählen. Testdesigner können den Start von Client-Test Runnern planen, wenn sie die Ausführung einer Testsuite planen.

    Benutzerrollen

    Weisen Sie Rollen zu, um Automated Test Framework-Berechtigungen zu definieren.

    Rollentitel [name] Rollenbeschreibung
    atf_test_admin

    Erstellt oder bearbeitet Eigenschaften von automatisierten Test-Frameworks. Hat folgende Berechtigungen:

    • Testseite anzeigen
    • Tests erstellen/bearbeiten/löschen
    • Testschritte erstellen/bearbeiten/löschen
    • Schrittkonfigurationsseite anzeigen
    • Test-Runner-Seite anzeigen
    • Testsuite-Ergebnisse, Testergebnisse und Ergebniselementseiten anzeigen
    • Benutzertests ausführen
    • Testsuites anzeigen, erstellen, bearbeiten, löschen und ausführen
    • Schrittkonfigurationsdatensätze erstellen/bearbeiten
    • Automated Test Framework Eigenschaften erstellen/bearbeiten
    atf_test_designer

    Zeigt nur Eigenschaften von automatisierten Test-Frameworks an (kann keine Eigenschaften erstellen oder bearbeiten). Hat folgende Berechtigungen:

    • Testseite anzeigen
    • Tests erstellen/bearbeiten/löschen
    • Testschritte erstellen/bearbeiten/löschen
    • Schrittkonfigurationsseite anzeigen
    • Test-Runner-Seite anzeigen
    • Testsuite-Ergebnisse, Testergebnisse und Ergebniselementseiten anzeigen
    • Benutzertests ausführen
    • Testsuites anzeigen, erstellen, bearbeiten, löschen und ausführen
    • Automated Test Framework Eigenschaften anzeigen
    atf_ws_designer

    Zeigen Sie Standardauthentifizierungsprofile an, die für REST-Endpunkte erforderlich sind, für die eine Authentifizierung erforderlich ist, oder legen Sie sie fest. Weitere Informationen finden Sie unter Kategorie „REST“.

    ATF unterstützt diese Elemente von Next Experience nicht, aber Unterstützung für diese Funktionen ist für zukünftige Releases geplant:
    • Mit UI Builder erstellte Seiten, einschließlich Seiten mit Listen und Formularkomponenten.
    • Zielseiten
    Hinweis:
    ATF unterstützt weiterhin die Core-UI, einschließlich der klassischen Umgebung (z. B. klassische Listen und Formulare).