Générer des rapports via CI/CD

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard
Not for use with personal data

Avec axe DevTools Reporter, vous pouvez désormais générer des rapports autonomes directement dans votre pipeline d'intégration continue/déploiement continu (CI/CD).

Suivez les étapes de base ci-dessous pour intégrer le reporter à votre pipeline Android ou iOS.

Intégration dans un pipeline Android

Configurez vos tests automatisés

  1. Mettez à jour vos tests automatisés pour enregistrer les résultats localement, qui peuvent ensuite être utilisés pour générer le rapport.

  2. Ajoutez le script ci-dessous dans le fichier build.gradle de votre application, sous le bloc android, et assurez-vous qu'il ne se trouve pas dans une autre tâche Gradle. Ajoutez le nom du package de votre application dans la packageName variable. Ce script déplacera les résultats générés par votre exécution automatisée vers le répertoire de rapports du dossier de compilation.

def reportsDirectory = "$buildDir/reports/androidTests/connected/axe"
def packageName = "your.app.package.name.here"

def createAndroidFolderDirectoryTask = task('createAndroidFolderDirectoryTask', type: Exec, group: 'reporting') {
    executable "${android.getAdbExecutable().toString()}"
    args 'shell', 'mkdir', '-p', '/storage/emulated/0/Android/data/' + packageName + '/files/AxeTestCases'
}

def clearAndroidDirectoryTask = task('clearAndroidDirectoryTask', type: Exec, group: 'reporting') {
    executable "${android.getAdbExecutable().toString()}"
    args 'shell', 'rm', '-r', '/storage/emulated/0/Android/data/' + packageName + '/files/AxeTestCases'
}

def fetchAndroidFolderAxeReportsTask = task('fetchAndroidFolderAxeReportsTask', type: Exec, group: 'reporting') {
    executable "${android.getAdbExecutable().toString()}"
    args 'pull', '/storage/emulated/0/Android/data/' + packageName + '/files/AxeTestCases', reportsDirectory

    dependsOn {
        createAndroidFolderDirectoryTask
    }

    finalizedBy {
        clearAndroidDirectoryTask
    }

    doFirst {
        new File(reportsDirectory).mkdirs()
    }
}

def createDirectoryTask = task('createDirectoryTask', type: Exec, group: 'reporting') {
    executable "${android.getAdbExecutable().toString()}"
    args 'shell', 'mkdir', '-p', '/storage/emulated/0/Documents/AxeTestCases'
}

def clearDirectoryTask = task('clearDirectoryTask', type: Exec, group: 'reporting') {
    executable "${android.getAdbExecutable().toString()}"
    args 'shell', 'rm', '-r', '/storage/emulated/0/Documents/AxeTestCases'

    finalizedBy {
        fetchAndroidFolderAxeReportsTask
    }
}

def fetchAxeReportsTask = task('fetchAxeReportsTask', type: Exec, group: 'reporting') {
    executable "${android.getAdbExecutable().toString()}"
    args 'pull', '/storage/emulated/0/Documents/AxeTestCases', reportsDirectory

    dependsOn {
        createDirectoryTask
    }

    finalizedBy {
        clearDirectoryTask
    }

    doFirst {
        new File(reportsDirectory).mkdirs()
    }
}

tasks.configureEach { task ->
    if (task.name == 'connectedDebugAndroidTest') {
        task.finalizedBy {
            fetchAxeReportsTask
        }
    }
}

Étapes pour générer le rapport

  1. Connectez-vous à notre artifactory privé, Agora, avec vos identifiants Deque.
  2. À partir de la « Bienvenue, <your_email>Dans le menu déroulant, sélectionnez « Modifier le profil ».
  3. Cliquez sur « Générer un jeton d'identité ».
  4. Une boîte de dialogue s'ouvrira et affichera l'option permettant de copier le jeton de référence.
  5. Créez un nom distinctif pour le jeton d'identité et ajoutez-le dans la description. L'exemple ci-dessous utilise AGORA_IDENTITY_TOKEN comme nom
  6. Sélectionnez « Suivant ».
  7. Dans la boîte de dialogue suivante, veuillez copier votre jeton d'identité pour l'utiliser dans le script ci-dessous. Pour un pipeline automatisé, envisagez de rendre ce jeton disponible dans les variables d'environnement ou les secrets de projet de votre plateforme.
note

Le jeton d'identité est accessible uniquement depuis la boîte de dialogue, et vous ne pourrez plus le consulter après avoir fermé celle-ci. Ce jeton expirera 11 mois et 30 jours après sa création.

  1. Avant d'exécuter vos tests ou votre construction, récupérez le reporter. Voici un script pour commencer :
    # Compatible with a Mac runner on GitHub Actions. Make changes to the Reporter download type and location based on your pipeline requirements.
    AGORA_IDENTITY_TOKEN='<YOUR_AGORA_IDENTITY_TOKEN>'
    curl --compressed \
         -H "X-JFrog-Art-Api: ${AGORA_IDENTITY_TOKEN}" \
        "https://agora.dequecloud.com/artifactory/axe-devtools-reporter-cli/prod/4.11.1/pkgs/@axe-devtools/reporter-cli-macos" \
         --output "/Users/runner/reporter"
    chmod +x /Users/runner/reporter
  1. Créez votre application et exécutez vos tests

  2. Une fois les tests terminés, exécutez le reporter et spécifiez le chemin d'accès aux fichiers JSON de résultats.

    DEQUE_RESULTS="../ContainingFolder"
    /Users/runner/reporter ${DEQUE_RESULTS} "AxeReport" --format=html
tip

Personnalisez votre format de sortie (--format) avec html, junit ou csv.

Intégration dans un pipeline iOS

Configurez vos tests automatisés

Mettez à jour vos tests automatisés pour enregistrer les résultats localement, qui peuvent ensuite être utilisés pour générer le rapport.

Étapes pour générer le rapport

  1. Connectez-vous à notre artifactory privé, Agora, avec vos identifiants Deque.
  2. À partir de la « Bienvenue, <your_email>" Dans le menu déroulant, sélectionnez « Modifier le profil ».
  3. Cliquez sur « Générer un jeton d'identité ».
  4. Une boîte de dialogue s'ouvrira et affichera l'option permettant de copier le jeton de référence.
  5. Créez un nom distinctif pour le jeton d'identité et ajoutez-le dans la description. L'exemple ci-dessous utilise AGORA_IDENTITY_TOKEN comme nom.
  6. Sélectionnez « Suivant ».
  7. Dans la boîte de dialogue suivante, veuillez copier votre jeton d'identité pour l'utiliser dans le script ci-dessous. Pour un pipeline automatisé, envisagez de rendre ce jeton disponible dans les variables d'environnement ou les secrets de projet de votre plateforme.
note

Le jeton d'identité est accessible uniquement depuis la boîte de dialogue, et vous ne pourrez plus le consulter après avoir fermé celle-ci. Ce jeton expirera 11 mois et 30 jours après sa création.

  1. Avant d'exécuter vos tests ou votre construction, récupérez le reporter. Voici un script utile pour commencer :
    AGORA_IDENTITY_TOKENY='<YOUR_AGORA_IDENTITY_TOKEN>'
    curl --compressed \
         -H "X-JFrog-Art-Api: ${AGORA_IDENTITY_TOKEN}" \
        "https://agora.dequecloud.com/artifactory/axe-devtools-reporter-cli/prod/4.11.1/pkgs/@axe-devtools/reporter-cli-macos" \
         --output "/Users/runner/reporter"
    chmod +x /Users/runner/reporter
  1. Créez votre application et exécutez vos tests.

  2. Une fois les tests terminés, exécutez le reporter et spécifiez le chemin d'accès aux fichiers JSON de résultats.

    DEQUE_RESULTS="../ContainingFolder"
    /Users/runner/reporter ${DEQUE_RESULTS} "AxeReport" --format=html
tip

Personnalisez votre format de sortie (--format) avec html, junit ou csv.