Cloud Runner-Testgenerierung-REST-API

  • Freigeben Version: Washingtondc
  • Aktualisiert 6. Februar 2024
  • 7 Minuten Lesedauer
  • Verwaltet die Testauftragsgenerierung, die in einem Cloud Runner für Automated Test Framework (ATF) ausgeführt werden soll.

    Die Cloud Runner Test Generation 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 API-Name, One-Click Regression Testing for 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 Testgenerierungsauftrag.
    • Überprüfen Sie den Fortschritt des Testgenerierungsauftrags.
    • Brechen Sie den Testgenerierungsauftrag ab.

    Die Cloud Runner Test Generation API kann zusammen mit Cloud Runner Test Runner-REST-API und Cloud Runner-Testbenutzer-REST-APIverwendet werden. Sie können beispielsweise die Testgenerierungs-API aufrufen, um einen Test auszuführen und dann den Fortschritt des Tests in der Browser-Orchestration-Warteschlange (Cloud Runner TEST Generierungs-API) abzurufen und dann die Anzahl der Tests zu überprüfen, die bestanden wurden oder fehlgeschlagen sind.

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

    Testgenerierung – GET /now/sn_atf_tg/test_generation_progress

    Stellt den Status jedes generierten Tests für einen bereitgestellten BOQ-Datensatz (Browser Orchestration Queue) bereit.

    URL-Format

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

    Unterstützte Anforderungsparameter

    Tabelle : 1. Pfadparameter
    Name Beschreibung
    Keine
    Tabelle : 2. Abfrageparameter
    Name Beschreibung
    snboqId Erforderlich. Die sys_id des BOQ-Datensatzes des Testgenerierungsauftrags, von dem der Fortschritt abgerufen werden soll. Befindet sich in der BOQ-Tabelle [sn_atf_tg_sn_boq].

    Datentyp: Zeichenfolge

    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-Antwortcodesder REST-API.

    Tabelle : 6. Statuscodes
    Statuscode Beschreibung
    200 Fortschritt des BOQ-Auftrags 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 kann 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. Stellen Sie sicher, dass der Benutzer über die Administratorrolle verfügt.

    Antworttextparameter (JSON oder XML)

    Name Beschreibung
    Ergebnis Objekt, das die Fortschrittsergebnisse des generierten Testauftrags enthält, oder eine Meldung, in der erläutert wird, warum die Anforderung fehlgeschlagen ist.

    Datentyp: Objekt

    "result": { 
        "testsSucceeded": Number, 
        "testsFailed": Number, 
        "testsPending": Number, 
        "testsInProgress": Number, 
        "testsSkipped": Number 
      } 
    }

    Oder:

    {
      "result": { 
        "message": "String" 
      } 
    }
    result.message Fehlermeldung, die angibt, warum der Fortschritt der Testgenerierung nicht abgerufen werden kann. Der Nachrichtenparameter wird in einer erfolgreichen Antwort nicht zurückgegeben.

    Datentyp: Zeichenfolge

    result.testsErfolgreich Anzahl der generierten Tests, die bestanden haben.

    Datentyp: Zahl

    result.testsFehlgeschlagen Anzahl der generierten Tests, die fehlgeschlagen sind.

    Datentyp: Zahl

    result.testsAusstehend Anzahl der Anwendungsfälle, die auf generierte Tests warten.

    Datentyp: Zahl

    result.testsInProgress Anzahl der Anwendungsfälle, für die Tests erstellt werden.

    Datentyp: Zahl

    result.testsÜbersprungen Anzahl der Tests, die aufgrund des Auftragsabbruchs übersprungen wurden.

    Datentyp: Zahl

    cURL-Anforderung

    Der folgende GET-Aufruf gibt Fortschrittsinformationen zu generierten Tests zurück, die der snboqId 1234 zugeordnet sind.

    curl "https://instance.service-now.com/api/now/sn_atf_tg/test_generation_progress?snboqId=1234" \ 
    --request GET \ 
    --header "Accept:application/json" \ 
    --user "username":"password"

    Ausgabe:

    { 
      "result": { 
        "testsSucceeded": 0, 
        "testsFailed": 0, 
        "testsPending": 0, 
        "testsInProgress": 0, 
        "testsSkipped": 161 
      } 
    }

    Das folgende Beispiel gibt die Fehlermeldung 400 zurück, wenn keine BOQ-ID übergeben wird.

    curl "http://instance.service-now.com/api/now/sn_atf_tg/test_generation_progress" \
    --request GET \
    --header "Accept:application/json" \
    --user "username":"password"

    Antwort:

    {
      "result": {
        "message": "No SNBOQ ID passed in, add snboqId to request body"
      }
    }

    Das folgende Beispiel gibt die Fehlermeldung 400 zurück, wenn eine ungültige BOQ-ID übergeben wird.

    curl "http://instance.service-now.com/api/now/sn_atf_tg/test_generation_progress?snboqId=invalid_sys_id" \
    --request GET \
    --header "Accept:application/json" \
    --user "username":"password"

    Antwort:

    {
      "result": {
        "message": "Invalid SNBOQ sys_id passed in"
      }
    }

    Testgenerierung – POST /now/sn_atf_tg/cancel_test_generation

    Legt den Testgenerierungsauftrag und den zugehörigen Update Set-Datensatz auf den Status „Abgeschlossen“ fest. Bricht die Stammtracker aller generierten Tests ab, die ausgeführt werden. Wenn beim Abbruch Testaufträge ausgeführt werden, legt diese Methode einen der generierten Datensätze für laufende Tests auf „Übersprungen“ fest.

    Tests können aufgrund von Problemen mit Business Rules oder Zugriffskontrollregeln (ACLs) fehlschlagen oder automatisch abgebrochen werden. Zeigen Sie die generierte Testtabelle an, um weitere Details zu fehlgeschlagenen oder abgebrochenen Tests zu erhalten.

    URL-Format

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

    Unterstützte Anforderungsparameter

    Tabelle : 7. Pfadparameter
    Name Beschreibung
    Keine
    Tabelle : 8. Abfrageparameter
    Name Beschreibung
    Keine
    Tabelle : 9. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    snboqId Erforderlich. sys_id des BOQ-Datensatzes (Browser Orchestration Queue), der abgebrochen werden soll. Befindet sich in der BOQ-Tabelle [sn_atf_tg_sn_boq].

    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 : 10. 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 : 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-Antwortcodesder REST-API.

    Tabelle : 12. Statuscodes
    Statuscode Beschreibung
    200 BOQ-Auftrag 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 kann 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. Stellen Sie sicher, dass der Benutzer über die Administratorrolle verfügt.

    Antworttextparameter (JSON oder XML)

    Name Beschreibung
    Ergebnis Objekt mit den Ergebnissen der Stornierungsanforderung.

    Datentyp: Objekt

    "result": { 
        "message": String
    }
    result.message Nachricht, die angibt, ob der Testabbruch erfolgreich war.

    Datentyp: Zeichenfolge

    cURL-Anforderung

    Die folgende Anforderung bricht den Testgenerierungsauftrag eines angegebenen BOQ-Datensatzes ab.

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

    Der Antworttext gibt eine Erfolgsmeldung des Abbruchs zurück.

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

    Das folgende Beispiel gibt die Fehlermeldung 400 zurück, wenn keine BOQ-ID übergeben wird.

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

    Antwort:

    {
      "result": {
        "message": "No SNBOQ ID passed in, add snboqId to request body"
      }
    }

    Das folgende Beispiel gibt die Fehlermeldung 400 zurück, wenn eine ungültige BOQ-ID übergeben wird.

    curl "http://instance.service-now.com/api/now/sn_atf_tg/cancel_test_generation" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{\"snboqId\":\"invalid_sys_id\"}" \
    --user "username":"password"

    Antwort:

    {
      "result": {
        "message": "No SNBOQ ID passed in, add snboqId to request body"
      }
    }

    Testgenerierung – POST /now/sn_atf_tg/test_generation

    Fügt einen Datensatz in die Tabelle „Browser Orchestration Queue (BOQ)“ [sn_atf_tg_sn_boq] ein, um einen Testauftrag zu starten.

    URL-Format

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

    Unterstützte Anforderungsparameter

    Tabelle : 13. Pfadparameter
    Name Beschreibung
    Keine
    Tabelle : 14. Abfrageparameter
    Name Beschreibung
    Keine
    Tabelle : 15. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    tableEncodedQuery Die codierte Abfrage, die die Tabellen angibt, für die Tests generiert werden sollen. Eine leere Zeichenfolgeneingabe gilt standardmäßig für alle Tabellen. Weitere Informationen zum Erstellen codierter Abfragen finden Sie unter Encoded query strings.

    Datentyp: Zeichenfolge

    userEncodedQuery Die codierte Abfrage, die angibt, für welche Benutzer Tests generiert werden sollen. Eine leere Zeichenfolgeneingabe gilt standardmäßig für alle Tabellen. Weitere Informationen zum Erstellen codierter Abfragen finden Sie unter Encoded query strings.

    Datentyp: Zeichenfolge

    catalogEncodedQuery Die codierte Abfrage, die angibt, für welche Katalogelemente Tests generiert werden sollen. Eine leere Zeichenfolgeneingabe gilt standardmäßig für alle Katalogelemente. Weitere Informationen zum Erstellen codierter Abfragen finden Sie unter Encoded query strings.

    Datentyp: Zeichenfolge

    maxTestCount Anzahl der zu generierenden Gesamttests.

    Akzeptierte Werte: Beliebige Zahl zwischen 1 und 9999.

    Datentyp: Zahl

    Standard: 9999

    maxTestCountPerTable Anzahl der pro Tabelle zu generierenden Tests.

    Akzeptierte Werte: Beliebige Zahl zwischen 1 und 10.

    Datentyp: Zahl

    Standard: 10

    maxTestCountPerItem Anzahl der pro Katalogelement zu generierenden Tests.

    Akzeptierte Werte: Beliebige Zahl zwischen 1 und 10.

    Datentyp: Zahl

    Standard: 10

    E-Mail E-Mail-Adresse, die benachrichtigt werden soll, wenn die Testgenerierung abgeschlossen ist.

    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-Antwortcodesder REST-API.

    Tabelle : 18. Statuscodes
    Statuscode Beschreibung
    200 Ein Testgenerierungs-BOQ-Auftrag wurde erfolgreich eingefügt. Alle Fehler werden während der Verarbeitung in den BOQ-Datensatzprotokollen angezeigt. Alle Eingaben sind optional und standardmäßig so festgelegt, dass die maximale Anzahl von Tests für alle Tabellen und Servicekatalogelemente generiert wird.
    403 Fehler beim Gewähren des Anwenderzugriffs auf den Endpunkt. Stellen Sie sicher, dass der Benutzer über die Administratorrolle verfügt.

    Antworttextparameter (JSON oder XML)

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

    Datentyp: Objekt

    result.snboqId sys_id des BOQ-Datensatzes [sn_atf_tg_sn_boq], der beim Start der Testgenerierung eingefügt wird.

    Datentyp: Zeichenfolge

    cURL-Anforderung

    Das folgende Anforderungsbeispiel startet einen neuen Testauftrag in der -Instanz ohne Anforderungsparameter und fügt den Auftrag in die BOQ-Tabelle ein.

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

    Antworttext:

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

    Das folgende Anforderungsbeispiel startet einen neuen Testauftrag mit einer maximalen Testanzahl von 2 und filtert die Tests in der Incident-Tabelle und fügt den Auftrag dann in die BOQ-Tabelle ein.

    curl "http://instance.service-now.com/api/now/sn_atf_tg/test_generation" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:application/json" \ 
    --data "{\"maxTestCount\":\"2\",\"tableEncodedQuery\":\"name=incident\"}" \ 
    --user "username":"password"

    Antworttext:

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