Integración Azure

Este plugin integra los resultados de la ejecución de Wakamiti con un plan de test de Azure existente, al tiempo que permite adjuntar ficheros (como el generado por el plugin HTML Reporter) en la ejecución.



Instalación

Incluye el módulo en la sección correspondiente.

es.iti.wakamiti:azure-wakamiti-plugin:1.7.0
<dependency>
  <groupId>es.iti.wakamiti</groupId>
  <artifactId>azure-wakamiti-plugin</artifactId>
  <version>1.7.0</version>
</dependency>

Configuración

azure.disabled

  • Tipo: boolean
  • Por defecto: false

Desactiva por completo la funcionalidad de este plugin.

Example:

azure:
  disabled: true
  

azure.host

  • Tipo: string obligatorio

La dirección de la máquina donde está alojado el servidor Azure.

Ejemplo:

azure:
  host: azure.mycompany.org

azure.credentials.user

  • Tipo: string obligatorio

El nombre de usuario que se usará en la API REST de Azure, como parte de la autorización básica HTTP. Si se usa autenticación por token, no se requiere esta propiedad.

Ejemplo:

azure:
  credentials:
    user: myuser

azure.credentials.password

  • Tipo: string obligatorio

El password o token que se usará en la API REST de Azure, como parte de la autorización básica HTTP.

Ejemplo:

azure:
  credentials:
    password: xKHJFHLKJ7897

azure.apiVersion

  • Tipo: string obligatorio
  • Por defecto: 6.0-preview

El número de versión de la API REST de Azure que se va a usar para enviar las notificaciones.

Usar una versión anterior puede provocar que ciertas funcionalidades, como la creación de nuevos casos de test, no funcionen correctamente.

Ejemplo:

azure:
  apiVersion: '6.0-preview'

azure.organization

  • Tipo: string obligatorio

El nombre de la organización en Azure al que pertenece el plan de test.

Ejemplo:

azure:
  organization: MyOrganization

azure.project

  • Tipo: string obligatorio

El nombre del proyecto Azure al que pertenece el plan de test.

Ejemplo:

azure:
  project: MyProject

azure.tag

  • Tipo: string obligatorio
  • Por defecto: Azure

La etiqueta que se buscará a la hora de determinar si se debe realizar o no la integración con Azure.

Ejemplo:

azure:
  tag: AzureExecution

azure.attachments

  • Tipo: string[]

Una lista de ficheros, o de patrones de nombre de fichero en formato glob, que se adjuntarán a la ejecución Azure.

Ejemplo:

azure:
  attachments:
    - 'wakamiti.html'
    - '*.json'  

azure.createItemsIfAbsent

  • Tipo: boolean
  • Por defecto: false

Establece si se debe crear automáticamente los elementos (planes, suites y casos de test) que no existan en Azure.

Ejemplo:

azure:
  createItemsIfAbsent: true

azure.workItemTestCaseType

  • Tipo: string obligatorio

La nomenclatura que usa la instancia de Azure para referirse a los elementos de trabajo clasificados como casos de prueba.

Ejemplo:

azure:
  workItemTestCaseType: "Caso de prueba"

azure.timeZoneAdjustment

  • Tipo: integer obligatorio
  • Por defecto: 0

Aplica un ajuste horario a la hora de notificar los instantes de inicio y fin de ejecución, en caso de que la instancia de Azure funcione con una zona horaria distinta.

Ejemplo:

azure:
  timezoneAdjustment: -2

Uso

Para que el plugin envíe los resultados, se deben cumplir dos condiciones:

  • El escenario/característica debe estar etiquetado con una etiqueta específica (por defecto @Azure)
  • El escenario/característica debe tener definidas las siguientes propiedades:

    • azurePlan: nombre del plan de test en Azure.
    • azureArea: nombre del área al que pertenece el plan.
    • azureIteration: ruta de la iteración del plan, separada por \\.
    • azureTest: nombre del caso de test (si no se indica, se tomará el nombre de la carácterística/escenario de Wakamiti)
    • azureTestId: identificador del elemento de trabajo correspondiente al caso de test en Azure

Los casos de test que no tengan esto definido se ignorarán a la hora de hacer la integración.

En caso de que la ejecución de Wakamiti incluya casos de tests de varios planes de Azure distintos, se creará una ejecución Azure distinta por cada uno de ellos.

Ejemplos:

@Azure
# azurePlan: MyPlan
# azureArea: AAA
# azureIteration: AAA\\Iteration 1
# azureSuite: MySuite
# azureTest: MyTest
Característica: Pruebas de alta de usuario

Escenario: Alta de usuario inexiste
...

Escenario: Alta de usuario existente
...
@Azure
# azurePlan: MyPlan
# azureArea: AAA
# azureIteration: AAA\\Iteration 1
# azureSuite: MySuite
Característica: Pruebas de alta de usuario

# azureTest: MyFirstTest
# azureTestId: 543543
Escenario: Alta de usuario inexiste
...

# azureTest: MySecondTest
Escenario: Alta de usuario existente
...

Los casos de test que no tengan esto definido se ignorarán a la hora de hacer la integración.

En caso de que la ejecución de Wakamiti incluya casos de tests de varios planes de Azure distintos, se creará una ejecución Azure distinta por cada uno de ellos.