REST API für Cloud Runner-Testanwender

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 9 Minuten Lesedauer
  • Verwaltet Testanwenderaufträge, die in einem Cloud Runner für Automated Test Framework (ATF) ausgeführt werden sollen.

    Die Cloud Runner Test User API erfordert das Plugin ATF Test Generator and Cloud Runner (sn_atf_tg). Die mit dieser API verfügbaren Methoden werden im Now -Namespace ausgeführt und können mit dem API-Namen, Ein-Klick-Regressionstests für ATF, im REST-API-Explorer aufgerufen werden. Für den Zugriff auf diese API ist die Administratorrolle erforderlich.

    Sie können diese API für die folgenden Aufgaben verwenden:
    • Starten Sie den Anwendertestauftrag.
    • Legen Sie den Cloud-Anwender fest.
    • Überprüfen Sie, ob der angegebene Anwender gültig ist.
    • Überprüft den Fortschritt des Anwendertestauftrags.
    • Brechen Sie den Testauftrag ab.

    Die Cloud Runner Test Runner API kann zusammen mit REST API für Cloud Runner-Testgenerierung und REST API für Cloud Runner-Testanwenderverwendet werden. Sie können beispielsweise einen Test generieren (Cloud Runner-Testgenerierungs-API), dann den Fortschritt des Tests in der Browser-Orchestrationswarteschlange abrufen (Cloud Runner-TEST-Generierungs-API) und die Anzahl der Tests überprüfen, die bestanden oder fehlgeschlagen sind.

    Informationen zum Anzeigen der Server-API-Referenzdokumentation dieser API finden Sie unter Cloud Runner TestUserApi – Bereichsbezogen, Global.

    Cloud Runner-Testanwender – GET /now/sn_atf_tg/test_user_progress

    Stellt den Status des Testanwenderauftrags für einen angegebenen BOQ-Datensatz (Browser Orchestration Queue) bereit.

    URL-Format

    Standard-URL: GET /api/now/sn_atf_tg/test_user_progress

    Unterstützte Anforderungsparameter

    Tabelle : 1. Pfadparameter
    Name Beschreibung
    Keine
    Tabelle : 2. Abfrageparameter
    Name Beschreibung
    snboqId Erforderlich. sys_id des BOQ-Datensatzes des Testanwenderauftrags, dessen Fortschritt abgerufen werden soll.

    Datentyp: Zeichenfolge

    Tabelle: BOQ [sn_atf_tg_sn_boq]

    Tabelle : 3. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    Keine

    Kopfzeilen

    Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter Unterstützte REST API-Header.

    Tabelle : 4. Anforderungskopfzeilen
    Kopfzeile Beschreibung
    Akzeptieren Datenformat des Antworttexts. Unterstützte Typen: application/json oder application/xml.

    Standard: application/json

    Tabelle : 5. Antwortkopfzeilen
    Kopfzeile Beschreibung
    Keine

    Statuscodes

    Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter HTTP-Antwortcodes der REST-API.

    Tabelle : 6. Statuscodes
    Statuscode Beschreibung
    200 Der Fortschritt des Testanwenderauftrags wurde erfolgreich abgerufen.
    400 Fehler beim Abrufen des Status des BOQ-Datensatzes. Gibt eine der folgenden Nachrichten zurück:
    • Keine BOQ-ID übergeben – Es wurde keine BOQ-ID angegeben. Fügen Sie dem Anforderungstext die BOQ-ID hinzu.
    • BOQ-Datensatz konnte nicht gefunden werden – Ungültige Sys-ID. Vergewissern Sie sich, dass die sys_id des BOQ-Datensatzes gültig und der Datensatz vorhanden ist.
    403 Fehler beim Gewähren des Anwenderzugriffs auf den Endpunkt. Vergewissern Sie sich, dass der Benutzer über die Administratorrolle verfügt.

    Parameter des Antworttexts (JSON oder XML)

    Name Beschreibung
    Ergebnis Objekt, das die Fortschrittsergebnisse des Test-Runner-Auftrags oder eine Nachricht enthält, die erklärt, warum die Anforderung fehlgeschlagen ist.
    "result": { 
        "progress": 100, 
        "state": "completed" 
      }

    Oder:

    "result": { 
        "message": "String"
    }

    Datentyp: Objekt

    result.message Fehlermeldung, in der beschrieben wird, warum der Test Runner-Fortschritt nicht abgerufen werden kann. Der Nachrichtenparameter wird in einer erfolgreichen Antwort nicht zurückgegeben.

    Datentyp: Zeichenfolge

    result.progress Prozentsatz, der angibt, wie kurz der Abschluss eines Tests ist, während er ausgeführt wird.

    Datentyp: Zahl

    result.state Aktueller Status des BOQ-Datensatzes.

    Mögliche Werte:

    • Angeforderte Browser: An die Cloud-Infrastruktur wurde eine Anforderung zum Starten von Browsern für die Testgenerierung oder den Testlauf gesendet.
    • Abgeschlossen: Die Testaufgabe ist abgeschlossen.
    • Status „Fehlgeschlagen“: Die Testaufgabe ist fehlgeschlagen.
    • Ausstehend: Die angeforderte Testaktivität wurde erstellt und wartet auf die Ausführung.
    • Verarbeitung: Die Instanz scannt Datensätze, um sicherzustellen, dass die Ausführungstracker für Cloud Runner markiert sind, bevor die Anforderung an die Cloud-Infrastruktur gesendet wird.
    • Wird ausgeführt: Die Cloud-Infrastrukturbrowser suchen ausstehende Tests und führen sie aus.

    Datentyp: Zeichenfolge

    cURL-Anforderung

    Das folgende Anforderungsbeispiel zeigt, wie Sie den Fortschritt eines Testbenutzerauftrags überprüfen.

    curl "https://instance.service-now.com/api/now/sn_atf_tg/test_user_progress?snboqId=<sys_id of SNBOQ record>" \ 
    --request GET \ 
    --header "Accept:application/json" \ 
    --user "username:password"

    Antworttext:

    { 
      "result": { 
        "progress": 100, 
        "state": "completed" 
      } 
    }

    Cloud Runner-Testanwender – GET /now/sn_atf_tg/is_valid_cloud_user

    Überprüft, ob ein angegebener Anwender ein gültiger Cloud-Anwender ist.

    Mit dieser Methode wird überprüft, ob der Anwender die folgenden Kriterien erfüllt:
    • Vorhanden,
    • Ist aktiv,
    • Ist nicht ausgesperrt,
    • Passwortzurücksetzung erforderlich,
    • Ist Administrator,
    • Ist schreibgeschützt,
    • Ist nur Webservices

    URL-Format

    Standard-URL: GET /api/now/sn_atf_tg/is_valid_cloud_user

    Unterstützte Anforderungsparameter

    Tabelle : 7. Pfadparameter
    Name Beschreibung
    Keine
    Tabelle : 8. Abfrageparameter
    Name Beschreibung
    username Erforderlich. Anwendername des sys_user, mit dem überprüft werden kann, ob der Anwender die folgenden Baselinekriterien erfüllt.
    • Vorhanden,
    • Ist aktiv,
    • Ist nicht ausgesperrt,
    • Passwortzurücksetzung erforderlich,
    • Ist Administrator,
    • Ist schreibgeschützt,
    • Ist nur Webservices

    Wenn eine dieser Bedingungen fehlschlägt, gibt die API einen falschen booleschen Wert mit einer Meldung zurück, welche Kriterien fehlgeschlagen sind.

    Datentyp: Zeichenfolge

    Tabelle : 9. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    Keine

    Kopfzeilen

    Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter Unterstützte REST API-Header.

    Tabelle : 10. Anforderungskopfzeilen
    Kopfzeile Beschreibung
    Akzeptieren Datenformat des Antworttexts. Unterstützte Typen: application/json oder application/xml.

    Standard: application/json

    Tabelle : 11. Antwortkopfzeilen
    Kopfzeile Beschreibung
    Keine

    Statuscodes

    Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter HTTP-Antwortcodes der REST-API.

    Tabelle : 12. Statuscodes
    Statuscode Beschreibung
    200 Gibt „wahr“ oder „falsch“ zurück, wenn der Anwender gültig ist und die Cloud-Anwenderkriterien erfüllt.
    403 Fehler beim Gewähren des Anwenderzugriffs auf den Endpunkt. Vergewissern Sie sich, dass der Benutzer über die Administratorrolle verfügt.

    Parameter des Antworttexts (JSON oder XML)

    Name Beschreibung
    Ergebnis Objekt mit den Ergebnissen der Anforderung.
    
      "result": { 
        "validUser": Boolean 
      }

    Datentyp: Objekt

    result.validUser Kennzeichnung, die angibt, ob der Anwender die Cloud-Anwenderkriterien erfüllt. Bei „wahr“ erfüllt der Benutzer die Kriterien.

    Datentyp: Boolesch

    cURL-Anforderung

    Die folgende Anforderung überprüft, ob der angegebene sys_user die Kriterien für die Verwendung der Cloud-Funktionalität erfüllt.

    curl "http://instance.service-now.com/api/now/sn_atf_tg/is_valid_cloud_user?username=<username of sys_user to check>" \ 
    --request GET \ 
    --header "Accept:application/json" \ 
    --user "username:password"

    Antworttext:

    { 
      "result": { 
        "validUser": <Boolean value indicating whether user is valid cloud user> 
      } 
    }

    Cloud Runner-Testanwender – POST /now/sn_atf_tg/test_user

    Fügt einen Testanwenderauftrag in die BOQ-Tabelle [sn_atf_tg_sn_boq] für einen bestimmten Anwendernamen ein, der dann in Cloud Runner ausgeführt wird.

    URL-Format

    Standard-URL: POST /api/now/sn_atf_tg/test_user

    Unterstützte Anforderungsparameter

    Tabelle : 13. Pfadparameter
    Name Beschreibung
    Keine
    Tabelle : 14. Abfrageparameter
    Name Beschreibung
    Keine
    Tabelle : 15. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    username Erforderlich. Anwendername des sys_user zum Testen der End-to-End-Infrastruktur des Cloud Runners.

    Datentyp: Zeichenfolge

    Header

    Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter Unterstützte REST API-Header.

    Tabelle : 16. Anforderungskopfzeilen
    Kopfzeile Beschreibung
    Akzeptieren Datenformat des Antworttexts. Unterstützte Typen: application/json oder application/xml.

    Standard: application/json

    Content-Type Datenformat des Anforderungstexts. Unterstützte Typen: application/json oder application/xml.

    Standard: application/json

    Tabelle : 17. Antwortkopfzeilen
    Kopfzeile Beschreibung
    Keine

    Statuscodes

    Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter HTTP-Antwortcodes der REST-API.

    Tabelle : 18. Statuscodes
    Statuscode Beschreibung
    200 Es wurde erfolgreich ein Testanwender-BOQ-Auftrag eingefügt.
    400 Fehler beim Starten des Testanwenderauftrags.

    Wenn ein leerer Anwendername angegeben wird oder in der Tabelle „sys_user“ kein Anwender gefunden werden kann, gibt der Server einen Fehler aus.

    403 Fehler beim Gewähren des Anwenderzugriffs auf den Endpunkt. Vergewissern Sie sich, dass der Benutzer über die Administratorrolle verfügt.

    Parameter des Antworttexts (JSON oder XML)

    Name Beschreibung
    Ergebnis Objekt mit den Ergebnissen der Anforderung.
    
      "result": { 
        "snboqId": String
      }

    Oder:

    "result": { 
        "message": "String"
    }

    Datentyp: Objekt

    result.message Fehlermeldung, die beschreibt, warum dem Anwendernamen keine Testfähigkeiten zugewiesen werden können. Der Nachrichtenparameter wird in einer erfolgreichen Antwort nicht zurückgegeben.

    Datentyp: Zeichenfolge

    result.snboqId Sys_id des BOQ-Datensatzes, der eingefügt wird, wenn der Testanwenderauftrag erfolgreich gestartet wird.

    Datentyp: Zeichenfolge

    Tabelle: BOQ [sn_atf_tg_sn_boq]

    cURL-Anforderung

    Das folgende Anforderungsbeispiel zeigt, wie ein Testanwenderauftrag für einen bestimmten Anwendernamen in die Tabelle „BOQ“ [sn_atf_tg_sn_boq] eingefügt wird.

    curl "http://instance.service-now.com/api/now/sn_atf_tg/test_user" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:application/json" \ 
    --data "{\"username\":\"<username of sys_user to test cloud infrastructure>\"}" \ 
    --user "username:password"

    Die Antwort gibt eine sys_id des BOQ-Datensatzes zurück, der eingefügt wird, wenn der Testanwenderauftrag startet.

    { 
      "result": { 
        "snboqId": "<sys_id of newly inserted BOQ record>" 
      } 
    }

    Im folgenden Beispiel wird eine Fehlermeldung 400 zurückgegeben, wenn kein oder ein ungültiger Anwendername übergeben wird.

    curl "https://instance.service-now.com/api/now/sn_atf_tg/test_user" \
    --request POST \
    --header "Accept:application/json" \
    --user "username:password"

    Antwort:

    {
      "result": {
        "message": "Unable to set cloud user as cloud user not valid"
      }
    }

    Cloud Runner-Testanwender – POST /now/sn_atf_tg/cancel_test_user

    Legt den Status des Testanwenderauftrags in der Tabelle der Browser-Orchestrationswarteschlange (BOQ) [sn_atf_tg_sn_boq] auf „Abgeschlossen“ fest.

    URL-Format

    Standard-URL: POST /api/now/sn_atf_tg/cancel_test_user

    Unterstützte Anforderungsparameter

    Tabelle : 19. Pfadparameter
    Name Beschreibung
    Keine
    Tabelle : 20. Abfrageparameter
    Name Beschreibung
    Keine
    Tabelle : 21. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    snboqId Erforderlich. Sys_id des abzubrechenden BOQ-Datensatzes, der dem Testanwenderauftrag zugeordnet ist.

    Datentyp: Zeichenfolge

    Tabelle: SNBOQ [sn_atf_tg_sn_boq]

    Header

    Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter Unterstützte REST API-Header.

    Tabelle : 22. Anforderungskopfzeilen
    Kopfzeile Beschreibung
    Akzeptieren Datenformat des Antworttexts. Unterstützte Typen: application/json oder application/xml.

    Standard: application/json

    Content-Type Datenformat des Anforderungstexts. Unterstützte Typen: application/json oder application/xml.

    Standard: application/json

    Tabelle : 23. Antwortkopfzeilen
    Kopfzeile Beschreibung
    Keine

    Statuscodes

    Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter HTTP-Antwortcodes der REST-API.

    Tabelle : 24. Statuscodes
    Statuscode Beschreibung
    200 Der BOQ-Auftrag wurde erfolgreich abgebrochen.
    400 Fehler beim Abbrechen des Auftrags. Gibt eine der folgenden Nachrichten zurück:
    • Keine BOQ-ID übergeben – Es wurde keine BOQ-ID angegeben. Fügen Sie dem Anforderungstext die BOQ-ID hinzu.
    • BOQ-Datensatz konnte nicht gefunden werden – Ungültige Sys-ID. Vergewissern Sie sich, dass die sys_id des BOQ-Datensatzes gültig und der Datensatz vorhanden ist.
    403 Fehler beim Gewähren des Anwenderzugriffs auf den Endpunkt. Vergewissern Sie sich, dass der Benutzer über die Administratorrolle verfügt.

    Parameter des Antworttexts (JSON oder XML)

    Name Beschreibung
    Ergebnis Objekt mit den Ergebnissen der Anforderung.
    
      "result": { 
        "message": String
      }

    Datentyp: Objekt

    result.message Nachricht, die beschreibt, ob der Abbruch des Testanwenders erfolgreich war.

    Datentyp: Zeichenfolge

    cURL-Anforderung

    Die folgende Anforderung zeigt, wie ein Testbenutzerauftrag in der Tabelle „Browser-Orchestrationswarteschlange“ [sn_atf_tg_sn_boq] abgebrochen wird.

    curl "https://instance.service-now.com/api/now/sn_atf_tg/cancel_test_user" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:application/json" \ 
    --data "{\"snboqId\":\"<sys_id of BOQ record>\"}" \ 
    --user "username:password"

    Erfolgreicher Antworttext:

    { 
      "result": { 
        "message": "success" 
      } 
    }

    Cloud Runner-Testanwender – POST /now/sn_atf_tg/select_cloud_user

    Startet einen End-to-End-Testanwenderauftrag in Cloud Runner. Wenn er sich mit der Administratorrolle anmelden kann, wird von der Cloud-Benutzereigenschaft für zukünftige Testläufe und Testgenerierungen standardmäßig dieser Benutzer verwendet.

    URL-Format

    Standard-URL: POST /api/now/sn_atf_tg/select_cloud_user

    Unterstützte Anforderungsparameter

    Tabelle : 25. Pfadparameter
    Name Beschreibung
    Keine
    Tabelle : 26. Abfrageparameter
    Name Beschreibung
    Keine
    Tabelle : 27. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    username Erforderlich. Anwendername des sys_user zum Testen und Festlegen des Cloud-Anwenders für zukünftige Test Runner- und Testgenerierungsaufträge.

    Datentyp: Zeichenfolge

    Header

    Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter Unterstützte REST API-Header.

    Tabelle : 28. Anforderungskopfzeilen
    Kopfzeile Beschreibung
    Akzeptieren Datenformat des Antworttexts. Unterstützte Typen: application/json oder application/xml.

    Standard: application/json

    Content-Type Datenformat des Anforderungstexts. Unterstützte Typen: application/json oder application/xml.

    Standard: application/json

    Tabelle : 29. Antwortkopfzeilen
    Kopfzeile Beschreibung
    Keine

    Statuscodes

    Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter HTTP-Antwortcodes der REST-API.

    Tabelle : 30. Statuscodes
    Statuscode Beschreibung
    200 Die End-to-End-Cloud Runner-Infrastruktur wurde erfolgreich getestet und der Cloud-Anwender für zukünftige Testausführungs- und Testgenerierungsaufträge festgelegt.
    400 Fehler beim Testen der vollständigen End-to-End-Cloud Runner-Infrastruktur und beim Festlegen des Cloud-Anwenders. Stellen Sie sicher, dass der Anwendername nicht leer ist oder dass der Anwender in der Tabelle „sys_user“ für einen bestimmten Anwendernamen vorhanden ist.
    403 Fehler beim Gewähren des Anwenderzugriffs auf den Endpunkt. Vergewissern Sie sich, dass der Benutzer über die Administratorrolle verfügt.

    Parameter des Antworttexts (JSON oder XML)

    Name Beschreibung
    Ergebnis Objekt mit den Ergebnissen der Anforderung.
    
      "result": { 
        "message": "String"
      }

    Datentyp: Objekt

    result.message Nachricht, die beschreibt, ob der Anwender erfolgreich für zukünftige Testläufe und Testgenerierungen in der Cloud Runner-Infrastruktur ausgewählt wurde.

    Datentyp: Zeichenfolge

    cURL-Anforderung

    Das folgende Beispiel zeigt, wie Sie anfordern, dass ein bestimmter Benutzer für zukünftige Testläufe und Testgenerierungen in der Cloud Runner-Infrastruktur ausgewählt wird.

    curl "https://instance.service-now.com/api/now/sn_atf_tg/select_cloud_user" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:application/json" \ 
    --data "{\"username\":\"<username of sys_user to set as cloud user>\"}" \ 
    --user "username:password"

    Der Antworttext gibt eine Erfolgsmeldung zurück, die angibt, dass der Cloud-Benutzer erfolgreich für Testläufe und Generierungen ausgewählt wurde.

    { 
      "result": { 
        "message": "success" 
      } 
    }