API REST de génération des tests de l’exécuteur dans le cloud
Gère la génération de tâches de test à exécuter dans un exécuteur dans le cloud pour Framework de tests automatisés (ATF).
L’API Cloud Runner Test Generation nécessite le (sn_atf_tg) module d’extension ATF Test Generator and Cloud Runner . Les méthodes disponibles avec cette API s’exécutent dans l’espace de noms Now et peuvent être appelées à l’aide de Nom de l’API, Test de régression en un clic pour ATF, dans l’explorateur d’API REST. Le rôle admin est requis pour accéder à cette API.
- Démarrez la tâche de génération des tests.
- Vérifiez la progression de la tâche de génération des tests.
- Annulez la tâche de génération des tests.
L’API de génération de tests de l’exécuteur dans le cloud peut être utilisée en tandem avec les balises API REST du test exécutable dans le cloud et API REST de l’utilisateur test de l’exécuteur dans le cloud. Par exemple, vous pouvez appeler l’API de génération de test pour exécuter un test, puis obtenir la progression du test dans la file d’attente d’orchestration du navigateur (API de génération de test de l’exécuteur cloud), puis vérifier le nombre de tests qui ont réussi ou échoué.
Pour consulter la documentation de référence de l’API Server relative à cette API, reportez-vous à la section TestGenerationAPI de l’exécuteur dans le cloud : champ d’application, global.
Génération des tests de l’exécuteur dans le cloud : GET /now/sn_atf_tg/test_generation_progress
Fournit l’état de chaque test généré pour un enregistrement de file d’attente d’orchestration du navigateur (BOQ) fourni.
Format d'URL
URL par défaut : GET /api/now/sn_atf_tg/test_generation_progress
Paramètres de demande pris en charge
| Nom | Description |
|---|---|
| Néant |
| Nom | Description |
|---|---|
| snboqId | Requis. L’enregistrement de nomenclature sys_id de la tâche de génération des tests dont vous souhaitez obtenir la progression. Type de données : chaîne Table : Boq [sn_atf_tg_sn_boq] |
| Nom | Description |
|---|---|
| Néant |
En-têtes
Les en-têtes de demande et de réponse suivants s’appliquent uniquement à cette action HTTP ou s’appliquent à cette action d’une manière distincte. Pour obtenir la liste des en-têtes généraux utilisés dans l’API REST, consultez En-têtes d’API REST pris en charge.
| En-tête | Description |
|---|---|
| Accepter | Format de données du corps de la réponse. Types pris en charge : application/json ou application/xml. Valeur par défaut : application/json |
| En-tête | Description |
|---|---|
| Néant |
Codes d'état
Les codes d’état suivants s’appliquent à cette action HTTP. Pour obtenir la liste des codes d’état possibles utilisés dans l’API REST, consultez Codes de réponse HTTP de l’API REST.
| Code d'état | Description |
|---|---|
| 200 | Progression de la tâche de nomenclature récupérée avec succès. |
| 400 | Erreur lors de l’obtention de l’état d’enregistrement de nomenclature. Renvoie l’un des messages suivants :
|
| 403 | Erreur lors de l’octroi de l’accès de l’utilisateur au point de terminaison. Assurez-vous que l’utilisateur dispose du rôle administrateur. |
Paramètres du corps de la réponse (JSON ou XML)
| Nom | Description |
|---|---|
| résultat | Objet contenant les résultats de progression de la tâche de test générée ou un message expliquant pourquoi la demande a échoué. Type de données : objet Ou : |
| résultat.message | Message d’erreur expliquant pourquoi la progression de la génération des tests ne peut pas être récupérée. Le paramètre message n’est pas renvoyé dans une réponse réussie. Type de données : chaîne |
| résultat.testsréussis | Nombre de tests générés ayant réussi. Type de données : nombre |
| résultat.testsFailed | Nombre de tests générés qui ont échoué. Type de données : nombre |
| résultat.testsen attente | Nombre de cas d’utilisation en attente de tests générés. Type de données : nombre |
| résultat.testsen cours | Nombre de cas d’utilisation pour lesquels des tests sont créés. Type de données : nombre |
| résultat.testsignorés | Nombre de tests ignorés en raison de l’annulation de la tâche. Type de données : nombre |
Demande cURL
L’appel GET suivant renvoie des informations de progression sur les tests générés associés au snboqId 1234.
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"
Sortie :
{
"result": {
"testsSucceeded": 0,
"testsFailed": 0,
"testsPending": 0,
"testsInProgress": 0,
"testsSkipped": 161
}
}
L’exemple suivant renvoie un message d’erreur 400 lorsqu’aucun ID de nomenclature n’est transmis.
curl "http://instance.service-now.com/api/now/sn_atf_tg/test_generation_progress" \
--request GET \
--header "Accept:application/json" \
--user "username":"password"
Réponse :
{
"result": {
"message": "No SNBOQ ID passed in, add snboqId to request body"
}
}
L’exemple suivant renvoie un message d’erreur 400 lorsqu’un ID de nomenclature non valide est transmis.
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"
Réponse :
{
"result": {
"message": "Invalid SNBOQ sys_id passed in"
}
}
Génération des tests de l’exécuteur dans le cloud : POST /now/sn_atf_tg/cancel_test_generation
Définit la tâche de génération des tests et son enregistrement d’ensemble de mises à jour associé sur l’état Terminé. Annule les suivis racines de tous les tests générés en cours d’exécution. Si des tâches de test sont en cours lors de l’annulation, cette méthode définit tous les enregistrements de test en cours générés sur ignoré.
Les tests peuvent échouer ou s’annuler automatiquement en raison de problèmes de règles métier ou de règles de contrôle d’accès (ACL). Affichez la table de tests générée pour plus de détails sur les tests ayant échoué ou annulés.
Format d'URL
URL par défaut : POST /api/now/sn_atf_tg/cancel_test_generation
Paramètres de demande pris en charge
| Nom | Description |
|---|---|
| Néant |
| Nom | Description |
|---|---|
| Néant |
| Nom | Description |
|---|---|
| snboqId | Requis. Sys_id de l’enregistrement de la file d’attente d’orchestration du navigateur (BOQ) à annuler. Type de données : chaîne Table : Boq [sn_atf_tg_sn_boq] |
En-têtes
Les en-têtes de demande et de réponse suivants s’appliquent uniquement à cette action HTTP ou s’appliquent à cette action d’une manière distincte. Pour obtenir la liste des en-têtes généraux utilisés dans l’API REST, consultez En-têtes d’API REST pris en charge.
| En-tête | Description |
|---|---|
| Accepter | Format de données du corps de la réponse. Types pris en charge : application/json ou application/xml. Valeur par défaut : application/json |
| Type de contenu | Format des données du corps de la demande. Types pris en charge : application/json ou application/xml. Valeur par défaut : application/json |
| En-tête | Description |
|---|---|
| Néant |
Codes d'état
Les codes d’état suivants s’appliquent à cette action HTTP. Pour obtenir la liste des codes d’état possibles utilisés dans l’API REST, consultez Codes de réponse HTTP de l’API REST.
| Code d'état | Description |
|---|---|
| 200 | Annulation réussie de la tâche de nomenclature des tâches. |
| 400 | Erreur lors de l’annulation de la tâche. Renvoie l’un des messages suivants :
|
| 403 | Erreur lors de l’octroi de l’accès de l’utilisateur au point de terminaison. Assurez-vous que l’utilisateur dispose du rôle administrateur. |
Paramètres du corps de la réponse (JSON ou XML)
| Nom | Description |
|---|---|
| résultat | Objet contenant les résultats de la demande d’annulation. Type de données : objet |
| résultat.message | Message détaillant si l’annulation du test a réussi. Type de données : chaîne |
Demande cURL
La demande suivante annule la tâche de génération des tests d’un enregistrement de nomenclature spécifié.
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"
Le corps de la réponse renvoie un message de réussite de l’annulation.
{
"result": {
"message": "success"
}
}
L’exemple suivant renvoie un message d’erreur 400 lorsqu’aucun ID de nomenclature n’est transmis.
curl "http://instance.service-now.com/api/now/sn_atf_tg/cancel_test_generation" \
--request POST \
--header "Accept:application/json" \
--user "username":"password"
Réponse :
{
"result": {
"message": "No SNBOQ ID passed in, add snboqId to request body"
}
}
L’exemple suivant renvoie un message d’erreur 400 lorsqu’un ID de nomenclature non valide est transmis.
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"
Réponse :
{
"result": {
"message": "No SNBOQ ID passed in, add snboqId to request body"
}
}
Génération des tests de l’exécuteur dans le cloud : POST /now/sn_atf_tg/test_generation
Insère un enregistrement dans la table de file d’attente d’orchestration du navigateur (BOQ) [sn_atf_tg_sn_boq] pour démarrer une tâche de test.
Format d'URL
URL par défaut : POST /api/now/sn_atf_tg/test_generation
Paramètres de demande pris en charge
| Nom | Description |
|---|---|
| Néant |
| Nom | Description |
|---|---|
| Néant |
| Nom | Description |
|---|---|
| catalogEncodedQuery | Requête codée spécifiant les éléments de catalogue sur lesquels générer des tests. Une chaîne vide est définie par défaut sur tous les éléments de catalogue. Pour plus d’informations sur la formation de requêtes codées, reportez-vous à la section Encoded query strings. Type de données : chaîne |
| Adresse e-mail pour alerter lorsque la génération des tests est terminée. Type de données : chaîne |
|
| maxTestCount | Nombre de tests globaux à générer. Valeurs acceptées : nombre compris entre 1 et 9999. Type de données : nombre Par défaut : 9999 |
| maxTestCountPerItem | Nombre de tests à générer par élément de catalogue. Valeurs acceptées : nombre compris entre 1 et 10. Type de données : nombre Valeur par défaut : 10 |
| maxTestCountPerTable | Nombre de tests à générer par table. Valeurs acceptées : nombre compris entre 1 et 10. Type de données : nombre Valeur par défaut : 10 |
| champ d’applicationForGeneratingTests | Requis quand separateUpdateSetPerScope est défini sur faux. Sys_id du périmètre dans lequel placer tous les tests générés. Type de données : chaîne |
| separateUpdateSetPerScope | Marqueur indiquant s’il faut séparer les tests générés en suites, ensembles de mises à jour et champs d’application respectifs, ou placer les tests dans une suite, un ensemble de mises à jour et un champ d’application respectifs. Valeurs valides :
Type de données : booléennes Par défaut : true |
| Suite de tests | Facultatif. Définit le nom de la suite de tests à créer via la génération des tests. Type de données : chaîne Par défaut : suite générée par ATF : <time_stamp> |
| tableEncodedQuery | Requête codée spécifiant les tables sur lesquelles générer des tests. Une chaîne vide est définie par défaut sur toutes les tables. Pour plus d’informations sur la formation de requêtes codées, reportez-vous à la section Encoded query strings. Type de données : chaîne |
| userEncodedQuery | Requête codée spécifiant les utilisateurs sur lesquels générer des tests. Une entrée de chaîne vide est définie par défaut sur toutes les tables. Pour plus d’informations sur la formation de requêtes codées, reportez-vous à la section Encoded query strings. Type de données : chaîne |
En-têtes
Les en-têtes de demande et de réponse suivants s’appliquent uniquement à cette action HTTP ou s’appliquent à cette action d’une manière distincte. Pour obtenir la liste des en-têtes généraux utilisés dans l’API REST, consultez En-têtes d’API REST pris en charge.
| En-tête | Description |
|---|---|
| Accepter | Format de données du corps de la réponse. Types pris en charge : application/json ou application/xml. Valeur par défaut : application/json |
| Type de contenu | Format des données du corps de la demande. Types pris en charge : application/json ou application/xml. Valeur par défaut : application/json |
| En-tête | Description |
|---|---|
| Néant |
Codes d'état
Les codes d’état suivants s’appliquent à cette action HTTP. Pour obtenir la liste des codes d’état possibles utilisés dans l’API REST, consultez Codes de réponse HTTP de l’API REST.
| Code d'état | Description |
|---|---|
| 200 | Une tâche BOQ de génération de test a été insérée avec succès. Toutes les erreurs sont affichées dans les journaux d’enregistrement BOQ pendant le traitement. Toutes les entrées par défaut génèrent le nombre maximal de tests pour toutes les tables et tous les éléments du catalogue de services. |
| 403 | Erreur lors de l’octroi de l’accès de l’utilisateur au point de terminaison. Assurez-vous que l’utilisateur dispose du rôle administrateur. |
Paramètres du corps de la réponse (JSON ou XML)
| Nom | Description |
|---|---|
| résultat | Objet contenant les résultats de la demande.Type de données : objet |
| résultat.snboqId | Sys_id de l’enregistrement inséré dans la table sn_atf_tg_sn_boq au démarrage de la génération des tests. Type de données : chaîne |
Demande cURL
L’exemple de demande suivant démarre une nouvelle tâche de test dans l’instance sans aucun paramètre de demande et insère la tâche dans la table de nomenclature.
curl "http://instance.service-now.com/api/now/sn_atf_tg/test_generation" \
--request POST \
--header "Accept:application/json" \
--user "username":"password"
Corps de la réponse :
{
"result": {
"snboqId": <sys_id of newly inserted BOQ record>
}
}
L’exemple de demande suivant démarre une nouvelle tâche de test avec un nombre de tests maximal de 2 et filtre les tests dans la table Incident, puis insère la tâche dans la table BOQ.
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\",\"testSuite\":\"Suite123\"}" \
--user "username":"password"
Corps de la réponse :
{
"result": {
"snboqId": <sys_id of newly inserted BOQ record>
}
}