Genereer rapporten binnen 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

Met axe DevTools Reporterkun je nu zelfvoorzienende rapporten genereren direct binnen je continuous integration / continuous deployment (CI/CD) pijplijn.

Volg de basisstappen hieronder om de reporter te integreren in je Android- of iOS-pijplijn.

Integratie in een Android-pijplijn

Stel je geautomatiseerde tests in

  1. Werk je geautomatiseerde tests bij om resultaten lokaal op te slaan, die vervolgens kunnen worden gebruikt om het rapport te genereren.

  2. Voeg het onderstaande script toe aan het build.gradle -bestand van je app, onder het android -blok, en zorg ervoor dat het niet binnen een andere Gradle-taak staat. Voeg de pakketnaam van je app toe in de packageName -variabele. Dit script zal de door je geautomatiseerde run gegenereerde resultaten naar de rapportmap van de buildmap verplaatsen.

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
        }
    }
}

Stappen voor het genereren van het rapport

  1. Log in op ons private artifactory, Agora, met je Deque-inloggegevens.
  2. Kies 'Profiel bewerken' in het "Welkom, <your_email>"-dropdownmenu.
  3. Klik op 'Genereer een Identiteitstoken'.
  4. Er verschijnt een dialoogvenster met de optie om het referentietoken te kopiëren.
  5. Maak een onderscheidende naam voor het Identiteitstoken en voeg deze toe aan de beschrijving. Het onderstaande voorbeeld gebruikt AGORA_IDENTITY_TOKEN als naam
  6. Selecteer 'Volgende'.
  7. In het volgende dialoogvenster, kopieer alstublieft je Identiteitstoken voor gebruik in het onderstaande script. Voor een geautomatiseerde pijplijn, zorg ervoor dat dit token beschikbaar is in je omgevingsvariabelen of projectgeheimen voor je platform.
note

Het Identiteitstoken is alleen toegankelijk vanuit het dialoogvenster en je zult het niet opnieuw kunnen bekijken nadat je het dialoogvenster hebt gesloten. Dit token verloopt 11 maanden en 30 dagen na aanmaak.

  1. Haal de reporter op voordat je je tests of builds uitvoert. Hier is een script om te beginnen:
    # 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. Bouw je app en voer je tests uit

  2. Voer de reporter uit zodra de tests zijn voltooid en specificeer het bestandspad van de resultaat-JSON-bestanden.

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

Pas je uitvoerformaat aan (--format) met html, junit of csv.

Integratie in een iOS-pijplijn

Stel je geautomatiseerde tests in

Werk je geautomatiseerde tests bij om resultaten lokaal op te slaan, die vervolgens kunnen worden gebruikt om het rapport te genereren.

Stappen voor het genereren van het rapport

  1. Log in op ons private artifactory, Agora, met je Deque-inloggegevens.
  2. Kies "Profiel bewerken" in het "Welkom, <your_email>"-dropdownmenu.
  3. Klik op 'Genereer een Identiteitstoken'.
  4. Er verschijnt een dialoogvenster met de optie om het referentietoken te kopiëren.
  5. Maak een onderscheidende naam voor het Identiteitstoken en voeg deze toe aan de beschrijving. Het onderstaande voorbeeld gebruikt AGORA_IDENTITY_TOKEN als naam.
  6. Selecteer 'Volgende'.
  7. In het volgende dialoogvenster, kopieer alstublieft je Identiteitstoken voor gebruik in het onderstaande script. Voor een geautomatiseerde pijplijn, zorg ervoor dat dit token beschikbaar is in je omgevingsvariabelen of projectgeheimen voor je platform.
note

De Identity Token is alleen toegankelijk vanuit de dialoog en je kunt deze niet meer bekijken nadat je de dialoog hebt gesloten. Deze token verloopt 11 maanden en 30 dagen na de aanmaakdatum.

  1. Voordat je je tests of build uitvoert, haal de reporter op. Hier is een handig script om mee te beginnen:
    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. Bouw je app en voer je tests uit.

  2. Nadat de tests zijn voltooid, voer de reporter uit en specificeer het pad naar de JSON-bestanden met de resultaten.

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

Pas je uitvoerformaat aan (--format) met html, junit of csv.