Fichier JSON de test

Collection de tests

Paramètres

Exemple

{
    "processName": "TEST_PROCESS",
    "processVersion": 1,
    "tests": [...],
    "deleteRequest": false
}

Test

Paramètres

Exemple

"tests": [
    {
        "describe": "First test",
        "requestParameters": [...],
        "actions": [...],
        "assertions": {...}
    },
    {
        "describe": "First test",
        "requestParameters": [...],
        "actions": [...],
        "assertions": {...}
    }
]
            

Action

Les actions de test seront exécutées dans l'ordre que vous définissez.

Paramètres

Exemple

"actions": [
    {
        "name": "INITIATES",
        "operation": "COMPLETE",
        "parameters": [...],
        "assertions": {...}
    },
    {
        "name": "COPY_DATA",
        "operation": "CHECK",
        "timeout": 10,
        "assertions": {...}
    },
    {
        "name": "SUBTEST_PROCESS",
        "operation": "SUBPROCESS",
        "subRequestFile": "./Resource/Process/Test/subprocessjson.json",
        "assertions": {...}
    }
]

Le contenu du fichier de sous requête possède seulement les actions qui seront effectuées.

Un exemple du contenu est fourni dans la section Exemple d'usage.

Sub request

Paramètres

Exemple

"subRequest": {
    "actions": [...]
},
"assertions": {...}

Parameter

Paramètres

Exemples

📌 Exemple pour les paramètres de la requête de Test

"requestParameters": [
    {
        "name": "IN_TEXT",
        "textValue": "Text"
    },
    {
        "name": "IN_NUMERIC",
        "numericValue": 11.1
    },
    {
        "name": "IN_DATETIME",
        "dateTimeValue": "1977-04-22T06:00:00Z"
    },
    {
        "name": "IN_FILE",
        "fileValue": {...}
    }
]

📌 Exemple pour les paramètres de l'action de Test

"parameters": [
    {
        "name": "IN_TEXT",
        "textValue": "Text"
    },
    {
        "name": "IN_NUMERIC",
        "numericValue": 11.1
    },
    {
        "name": "IN_DATETIME",
        "dateTimeValue": "1977-04-22T06:00:00Z"
    },
    {
        "name": "IN_FILE",
        "fileValue": {...}
    }
]

Action assertions

Paramètres

Le nœud assertions vérifie si les données retournées par l’action sont exactement les mêmes que celles spécifiées dans ses paramètres. Si elles ne correspondent pas, le test sera évalué comme étant échoué.

Exemple

"assertions": {
    "status": "CLOSED",
    "subStatus": "COMPLETED",
    "data": [...]
}

Request assertions

Paramètres

Le nœud assertions vérifie si les données retournées par la demande créée lors du test sont exactement les mêmes que celles spécifiées dans ses paramètres. Si elles ne correspondent pas, le test sera évalué comme étant échoué.

Exemple

"assertions": {
    "completedActionCount": 3,
    "requestStatus": "CLOSED",
    "requestSubStatus": "ABORTED",
    "requestData": [...]
}

Data

Paramètres

Exemple

"requestData": [
    {
        "name": "REQUEST_SUBJECT",
        "textValue": "OK"
    },
    {
        "name": "COPYDATA_VALUE",
        "textValue": "OK"
    }
]

File value

Paramètres

Exemple

"fileValue": {
    "content": "R3JhcGhRTCBGaWxl",
    "contentType": "plain/text",
    "description": "desc",
    "name": "test.txt",
    "size": 12
}

Action exception

Paramètres

Exemple

"exception": {
    "type": "ERROR",
    "message": "Message",
    "source": "Source"
}

Exemple d'usage

La commande process test est basée sur un fichier json. Ce document de définition vous permet de définir les flux qui seront exécutés pour vos tests et les résultats attendus. Celui-ci est constitué de 10 différents aspects.

Voici le workflow que nous allons utiliser pour les explications :

Fichier de test

Ceci est le contenu du fichier de test du process parent :

{
    "processName": "TEST_PROCESS",
    "processVersion": 1,
    "tests": [
        {
            "describe": "First test",
            "requestParameters": [],
            "actions": [
                {
                    "name": "INITIATES",
                    "operation": "COMPLETE",
                    "parameters": [
                        {
                            "name": "REQUEST_SUBJECT",
                            "textValue": "OK"
                        }
                    ],
                    "assertions": {
                        "status": "CLOSED",
                        "subStatus": "COMPLETED"
                    }
                },
                {
                    "name": "COPY_DATA",
                    "operation": "CHECK",
                    "timeout": 10,
                    "assertions": {
                        "status": "CLOSED",
                        "subStatus": "COMPLETED",
                        "data": [
                            {
                                "name": "COPYDATA_VALUE",
                                "textValue": "OK"
                            }
                        ]
                    }
                },
                {
                    "name": "SUBTEST_PROCESS",
                    "operation": "SUBPROCESS",
                    "subRequestFile": "./Resource/Process/Test/subprocessjson.json",
                    "assertions": {
                        "status": "CLOSED",
                        "subStatus": "COMPLETED"
                    }
                }
            ],
            "assertions": {
                "completedActionCount": 3,
                "requestStatus": "CLOSED",
                "requestSubStatus": "COMPLETED",
                "requestData": [
                    {
                        "name": "REQUEST_SUBJECT",
                        "textValue": "OK"
                    },
                    {
                        "name": "COPYDATA_VALUE",
                        "textValue": "OK"
                    }
                ]
            }
        },
        {
            "describe": "Second test",
            "requestParameters": [],
            "actions": [
                {
                    "name": "INITIATES",
                    "operation": "COMPLETE",
                    "parameters": [
                        {
                            "name": "REQUEST_SUBJECT",
                            "textValue": "OK"
                        }
                    ]
                },
                {
                    "name": "COPY_DATA",
                    "operation": "CHECK",
                    "timeout": 10,
                    "assertions": {
                        "status": "CLOSED",
                        "subStatus": "COMPLETED",
                        "data": [
                            {
                                "name": "COPYDATA_VALUE",
                                "textValue": "OK"
                            }
                        ]
                    }
                },
                {
                    "name": "SUBTEST_PROCESS",
                    "operation": "SUBPROCESS",
                    "subRequest": {
                        "actions": [
                            {
                                "name": "INITIATES",
                                "operation": "COMPLETE",
                                "parameters": [
                                    {
                                        "name": "REQUEST_SUBJECT",
                                        "textValue": "OK"
                                    }
                                ]
                            },
                            {
                                "name": "VALIDATES",
                                "operation": "COMPLETE",
                                "parameters": [
                                    {
                                        "name": "APPROVAL_DECISION",
                                        "textValue": "MORE_INFO"
                                    }
                                ]
                            },
                            {
                                "name": "UPDATES",
                                "operation": "COMPLETE",
                                "timeout": 5,
                                "parameters": [
                                    {
                                        "name": "REQUEST_SUBJECT",
                                        "textValue": "OK"
                                    }
                                ]
                            },
                            {
                                "name": "VALIDATES",
                                "operation": "COMPLETE",
                                "parameters": [
                                    {
                                        "name": "APPROVAL_DECISION",
                                        "textValue": "YES"
                                    }
                                ]
                            }
                        ]
                    },
                    "assertions": {
                        "status": "CLOSED",
                        "subStatus": "COMPLETED"
                    }
                }
            ],
            "assertions": {
                "completedActionCount": 3,
                "requestStatus": "CLOSED",
                "requestSubStatus": "COMPLETED",
                "requestData": [
                    {
                        "name": "REQUEST_SUBJECT",
                        "textValue": "OK"
                    },
                    {
                        "name": "COPYDATA_VALUE",
                        "textValue": "OK"
                    }
                ]
            }
        },
        {
            "describe": "Third test",
            "requestParameters": [],
            "actions": [
                {
                    "name": "INITIATES",
                    "operation": "COMPLETE",
                    "parameters": [
                        {
                            "name": "REQUEST_SUBJECT",
                            "textValue": "OK"
                        }
                    ]
                },
                {
                    "name": "COPY_DATA",
                    "operation": "CHECK",
                    "timeout": 10,
                    "assertions": {
                        "status": "CLOSED",
                        "subStatus": "COMPLETED",
                        "data": [
                            {
                                "name": "COPYDATA_VALUE",
                                "textValue": "OK"
                            }
                        ]
                    }
                },
                {
                    "name": "SUBTEST_PROCESS",
                    "operation": "SUBPROCESS",
                    "subRequest": {
                        "actions": [
                            {
                                "name": "INITIATES",
                                "operation": "COMPLETE",
                                "parameters": [
                                    {
                                        "name": "REQUEST_SUBJECT",
                                        "textValue": "OK"
                                    }
                                ]
                            },
                            {
                                "name": "VALIDATES",
                                "operation": "CANCEL",
                                "exception": {
                                    "type": "ERROR",
                                    "message": "Message",
                                    "source": "Source"
                                },
                                "assertions": {
                                    "status": "CLOSED",
                                    "subStatus": "ABORTED"
                                }
                            }
                        ]
                    },
                    "assertions": {
                        "status": "CLOSED",
                        "subStatus": "ABORTED"
                    }
                }
            ],
            "assertions": {
                "completedActionCount": 3,
                "requestStatus": "CLOSED",
                "requestSubStatus": "ABORTED",
                "requestData": [
                    {
                        "name": "REQUEST_SUBJECT",
                        "textValue": "OK"
                    },
                    {
                        "name": "COPYDATA_VALUE",
                        "textValue": "OK"
                    }
                ]
            }
        },
        {
            "describe": "Fourth test",
            "requestParameters": [],
            "actions": [
                {
                    "name": "INITIATES",
                    "operation": "COMPLETE",
                    "parameters": [
                        {
                            "name": "REQUEST_SUBJECT",
                            "textValue": "OK"
                        }
                    ]
                },
                {
                    "name": "COPY_DATA",
                    "operation": "CHECK",
                    "timeout": 10,
                    "assertions": {
                        "status": "CLOSED",
                        "subStatus": "COMPLETED",
                        "data": [
                            {
                                "name": "COPYDATA_VALUE",
                                "textValue": "OK"
                            }
                        ]
                    }
                },
                {
                    "name": "SUBTEST_PROCESS",
                    "operation": "SUBPROCESS",
                    "subRequest": {
                        "actions": [
                            {
                                "name": "INITIATES",
                                "operation": "COMPLETE",
                                "parameters": [
                                    {
                                        "name": "REQUEST_SUBJECT",
                                        "textValue": "OK"
                                    }
                                ]
                            },
                            {
                                "name": "VALIDATES",
                                "operation": "CANCEL",
                                "assertions": {
                                    "status": "CLOSED",
                                    "subStatus": "ABORTED"
                                }
                            }
                        ]
                    },
                    "assertions": {
                        "status": "CLOSED",
                        "subStatus": "ABORTED"
                    }
                }
            ],
            "assertions": {
                "completedActionCount": 3,
                "requestStatus": "CLOSED",
                "requestSubStatus": "ABORTED",
                "requestData": [
                    {
                        "name": "REQUEST_SUBJECT",
                        "textValue": "OK"
                    },
                    {
                        "name": "COPYDATA_VALUE",
                        "textValue": "OK"
                    }
                ]
            }
        }
    ],
    "deleteRequest": false
}

subRequestFile

Ceci est le contenu du fichier de test subprocessjson.json, utilisé dans le premier test pour l'action SUBTEST_PROCESS :

{
    "actions": [
        {
            "name": "INITIATES",
            "operation": "COMPLETE",
            "parameters": [
                {
                    "name": "REQUEST_SUBJECT",
                    "textValue": "OK"
                }
            ]
        },
        {
            "name": "VALIDATES",
            "operation": "COMPLETE",
            "parameters": [
                {
                    "name": "APPROVAL_DECISION",
                    "textValue": "YES"
                }
            ]
        }
    ]
}

Dernière mise à jour