Automated Test Framework API testen – ServiceNow Fluent
Die Test-API enthält Objekte, die automatisierte Tests erstellen und ausführen [sys_atf_test], um zu bestätigen, dass Ihre Instanz nach einer Änderung funktioniert.
Testobjekt
Erstellen Sie einen automatisierten Test [sys_atf_test], der eine Reihe von auszuführenden Schritten enthält.
| Name | Typ | Beschreibung |
|---|---|---|
| $id | Zeichenfolge oder Zahl | Erforderlich. Eine eindeutige ID für das Metadatenobjekt, die im folgenden Format bereitgestellt wird: wobei<value> ist eine Zeichenfolge oder Zahl.Wenn Sie die Anwendung erstellen, wird diese ID in eine eindeutige sys_ID gehasht. |
| Name | Zeichenfolge | Ein eindeutiger Name für den Test. |
| description | Zeichenfolge | Eine Beschreibung dessen, was der Test tut. |
| aktiv | Boolean | Kennzeichnung, die angibt, ob der Test aktiv ist. Gültige Werte:
Standardwert: wahr |
| „failOnServerError“ | Boolean | Kennzeichnung, die angibt, ob ein Fehler zurückgegeben werden soll, wenn während des Tests ein Serverfehler auftritt. Gültige Werte:
Standardwert: wahr |
| ConfigurationFunction | Funktion | Die Schritte des Tests. Testschritte werden als Anweisungen innerhalb der ATF- Funktion übergeben.Weitere Informationen zu Testschritten finden Sie unter Unterstützte Testschritte. |
Die Ausgabewerte von Testschritten mit Ausgabevariablen können als Variablen gespeichert und mithilfe der Syntax- Ausgabe als Eingaben für andere Schritte verwendet werden.<output-variable> . Die Ausgabevariablen können entweder direkt als Eingaben in entsprechenden Feldern oder innerhalb einer Vorlagenzeichenfolge verwendet werden, z. B. mit atf.server.log im folgenden Beispiel.
import { Test } from '@servicenow/sdk/core'
import '@servicenow/sdk-core/global'
Test(
{
active: true,
failOnServerError: true,
name: 'Simple example',
description: 'An illustrative test written in fluent',
$id: Now.ID[1],
},
(atf) => {
atf.form.openNewForm({
table: 'sn_table_app_reptile_table',
formUI: 'standard_ui',
view: '',
})
atf.form.setFieldValue({
table: 'sn_table_app_reptile_table',
formUI: 'standard_ui',
fieldValues: {
reptiles: 'lizard' as any,
},
})
const output = atf.form.submitForm({ assertType: 'form_submitted_to_server', formUI: 'standard_ui' })
atf.server.recordValidation({
recordId: output.record_id,
table: 'sn_table_app_reptile_table',
assertType: 'record_validated',
enforceSecurity: true,
fieldValues: 'reptiles=lizard',
})
atf.server.log({
log: `Submitted record with sys_id: ${output.record_id} to table ${output.table}`
})
}
)
Unterstützte Testschritte
Die folgenden Testschritte werden unterstützt. Informationen zu Schritteigenschaften finden Sie in der Dokumentation Automated Test Framework (ATF) Testschrittkategorien.
| Kategorie | Schritte |
|---|---|
| Kategorie „Anwendungsnavigator“ |
|
| E-Mail-Kategorie |
|
| Formulare in der Serviceportal-Kategorie |
|
| Kategorie „Service Catalog im Service Portal“ |
|
| Quick start tests for Dashboards |
|
| Kategorie „REST“ |
|
| Kategorie „Server“ |
|
| Servicekatalog-Kategorie |
|
| Kategorie „Formular“ |
|