Sintassi della definizione di test
Informazioni relative al modo in cui il test è definito come file YAML.
Il test è definito come un file YAML con le seguenti sezioni:
configs- Visualizza i valori di configurazione delle variabili specificate nel file.steps- Visualizza il flusso per lo scenario di test ed esegue l'elenco di fasi in ordine. Ogni fase ha una serie comune di parametri.
L'attributo
type nel file YAML di definizione del test descrive il tipo di steps.requirements: {}
info:
title: "New Configuration YAML File"
version: 2
configs:
globalVariables:
protocol: https://
domain: sample-api.us-east-a.apiconnect.automation.ibm.com
basePath: /bank
inputs:
- default:
value: string
type: array
- second:
value: number
type: string
steps:
- type: request
method: get
url: "{{ configs.globalVariables.protocol }}{{ domain }}{{ globalVariables.basePath }}/branches"
var: branches
mode: json
- type: assert-is
expression: branches
value: "{{ type }}"
- type: assert-exists
expression: branches.[1]
stoponfail: true
- type: assert-is
expression: branches.[0].type
value: string
stoponfail: true
- type: assert-is
expression: branches.[0].address.city
value: string
stoponfail: true
- type: assert-compares
expression1: branches.[0].type
expression2: branches.[7].type
- type: request
method: get
url: https://sample-api.us-east-a.apiconnect.automation.ibm.com/orders/order/AB1234
var: payload
mode: json
- type: assert-equals
expression: payload_response_statusCode
value: 200
ifexists: false
stoponfail: false
- type: assert-equals
expression: payload_response_header_Content-Type
value: application/json
- type: assert-in
expression: payload_response_header_Content-Type
values:
- application/json
- application/swagger+yaml
- type: assert-contains
expression: payload_response_header_Content-Type
value: app
- type: assert-matches
expression: payload_response_header_Content-Type
value: ^[a-z]+/json
- type: assert-exists
expression: "payload"
stoponfail: false
- type: assert-is
expression: "payload.tracking_reference"
value: "string"
ifexists: "false"
stoponfail: false
- type: assert-exists
expression: payload.shipped_at
stoponfail: false
- type: assert-exists
expression: payload.status
stoponfail: false
- type: assert-exists
expression: payload.created_at
stoponfail: false
La tabella seguente riassume l'insieme dei parametri supportati dall'attributo type .
| Parametri | Descrizione | Sottoattributi |
|---|---|---|
globalVariables |
Le variabili globali sono impostazioni che rimangono coerenti per l'intero test e in genere non cambiano tra un'esecuzione e l'altra. | È possibile definire qualsiasi attributo in base alle proprie esigenze. Ad esempio:
|
| input | Definisce vari set di parametri di input che vengono utilizzati in più scenari di test. | È possibile creare più set di dati con qualsiasi attributo per scenari di test specifici. Ad esempio, default e second sono due insiemi di dati, ciascuno con i propri attributi adatti a scenari diversi.Nota: per eseguire il test deve essere presente almeno un set di dati.
|
request |
Effettua una richiesta http. |
Ad esempio:
|
assert-is |
Asserire che il tipo di variabile dalla risposta è value. |
Ad esempio:
|
assert-exists |
Asserire che esiste una particolare variabile specificata in expression . |
Ad esempio:
|
assert-equals |
Affermare che una variabile è uguale a value. |
Ad esempio:
|
assert-greater |
Asserire che la variabile è maggiore di value. |
Ad esempio:
|
assert-less |
Asserire che la variabile è minore di value. |
Ad esempio:
|
assert-in |
Asserire che l'elemento identificato da una data espressione corrisponde ad almeno un elemento di un dato elenco. |
Ad esempio:
|
assert-matches |
Asserisce che il valore dell'elemento identificato da una determinata espressione corrisponde a un formato specificato. |
Ad esempio:
|
assert-compares |
Asserire che i due elementi sono in qualche modo equivalenti. |
Ad esempio:
|
assert-contains |
Asserire che il valore dell'elemento identificato da una determinata espressione contiene una specifica sottostringa. |
Ad esempio:
|
each |
Esegue un loop sull'array a cui fa riferimento l'espressione, eseguendo i passaggi successivi per ogni elemento trovato. |
Ad esempio:
|
Per ulteriori informazioni sull'assegnazione di variabili in un file di configurazione YAML, vedere Assegnazione di variabili nella configurazione YAML.