Générer des rapports dans 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 dans 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 à votre fichier build.gradle de l'application, en dessous du 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 variable packageName. Ce script déplacera les résultats générés par votre exécution automatisée vers le répertoire du rapport du dossier build.

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 dépôt privé, Agora, avec vos identifiants Deque.
  2. Dans le menu déroulant "Bienvenue, <votre_email>", sélectionnez "Modifier le profil".
  3. Cliquez sur "Générer un jeton d'identité".
  4. Une boîte de dialogue s'ouvrira et montrera l'option pour 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é à utiliser dans le script ci-dessous. Pour un pipeline automatisé, envisagez de rendre ce jeton disponible dans vos variables d'environnement ou secrets de projet pour 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é la boîte de dialogue. Ce jeton expirera 11 mois et 30 jours après sa création.

  1. Avant d'exécuter vos tests ou de construire, 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. Compilez votre application et exécutez vos tests

  2. Une fois les tests terminés, exécutez le reporter et spécifiez le chemin du fichier des fichiers JSON de résultat.

    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 dépôt privé, Agora, avec vos identifiants Deque.
  2. Dans le menu déroulant "Bienvenue, <votre_email>", sélectionnez "Modifier le profil".
  3. Cliquez sur "Générer un jeton d'identité".
  4. Une boîte de dialogue s'ouvrira et montrera l'option pour 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é à utiliser dans le script ci-dessous. Pour un pipeline automatisé, envisagez de rendre ce jeton disponible dans vos variables d'environnement ou secrets de projet pour 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é la boîte de dialogue. Ce jeton expirera 11 mois et 30 jours après sa création.

  1. Avant d'exécuter vos tests ou de construire, 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. Compilez votre application et exécutez vos tests.

  2. Une fois les tests terminés, exécutez le reporter et spécifiez le chemin du fichier des fichiers JSON de résultat.

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

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