Sintaxis de definición de prueba
Información sobre cómo se define la prueba como un archivo YAML.
La prueba se define como un archivo YAML con las secciones siguientes:
configs- Muestra los valores de configuración de las variables especificadas en el fichero.steps-Muestra el flujo para el caso de prueba y ejecuta la lista de pasos en orden. Cada paso tiene un conjunto común de parámetros.
El atributo
type del archivo YAML de definición de prueba describe el tipo de 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 siguiente tabla resume el conjunto de parámetros que admite el atributo type .
| Parámetros | Descripción | Subatributos |
|---|---|---|
globalVariables |
Las variables globales son ajustes que permanecen constantes a lo largo de toda la prueba y normalmente no cambian entre ejecuciones. | Puede definir aquí cualquier atributo en función de sus necesidades. Por ejemplo:
|
| entradas | Define varios conjuntos de parámetros de entrada que se utilizan en múltiples escenarios de prueba. | Puede crear varios conjuntos de datos con cualquier atributo para escenarios de prueba específicos. Por ejemplo, default y second son dos conjuntos de datos, cada uno con sus propios atributos adaptados a diferentes escenarios.Nota: Para realizar la prueba debe haber al menos un conjunto de datos.
|
request |
Realice una solicitud http. |
Por ejemplo:
|
assert-is |
Afirmar que el tipo de variable de la respuesta es value. |
Por ejemplo:
|
assert-exists |
Certificar que existe una variable determinada especificada en expression . |
Por ejemplo:
|
assert-equals |
Afirmar que una variable es igual a value. |
Por ejemplo:
|
assert-greater |
Afirmar que la variable es mayor que value. |
Por ejemplo:
|
assert-less |
Afirma que la variable es menor que value. |
Por ejemplo:
|
assert-in |
Afirmar que el elemento identificado por una expresión dada coincide al menos con un elemento de una lista dada. |
Por ejemplo:
|
assert-matches |
Afirmar que el valor del elemento identificado por una expresión dada coincide con un formato especificado. |
Por ejemplo:
|
assert-compares |
Afirmar que los dos elementos son equivalentes de alguna manera. |
Por ejemplo:
|
assert-contains |
Afirmar que el valor del elemento identificado por una expresión dada contiene una subcadena específica. |
Por ejemplo:
|
each |
Recorre el array referenciado en la expresión realizando los subpasos para cada elemento encontrado. |
Por ejemplo:
|
Para obtener más información sobre la asignación de variables en un archivo de configuración YAML, consulte Asignación de variables en la configuración YAML.