Guardar los resultados de escaneo localmente

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

Al guardar los resultados del escaneo localmente, puedes usar el resultado JSON para integrar métricas de accesibilidad en diferentes herramientas de informes. También puede crear un informe HTML para compartir por correo electrónico o chat, para notificar a su equipo sobre el estado de accesibilidad de su ejecución de prueba.

Guardar resultados localmente solo es posible en pruebas automatizadas.

Guardar y Compartir Resultados

Utilice el siguiente código para guardar los resultados de la prueba en el dispositivo físico real o en el emulador como un archivo. .json El parámetro "prefix" será el comienzo del nombre del archivo en el que desea guardar el resultado.

axe.scan()?.saveResultToLocalStorage("prefix")

Nota: Puede cambiar el nombre del escaneo antes de guardar el resultado.

Usar Resultados para Informes

Aproveche los resultados del escaneo para generar informes moviendo los archivos JSON a la carpeta de compilación de su proyecto. Luego, puede utilizar axe DevTools Reporter CLI para crear un informe HTML a partir de un conjunto de escaneos. Alternativamente, puede acceder a los archivos de resultados mediante programación para integrar métricas de accesibilidad con herramientas de informes internos.

Agregue el siguiente script al archivo de su aplicación, debajo del bloque, y asegúrese de que no esté dentro de otra tarea de Gradle. build.gradle android{...} Agregue el nombre del paquete de su aplicación en la packageName variable.

El siguiente script copiará los informes generados al guardar los resultados localmente en su emulador o dispositivo y los moverá al directorio de informes de su carpeta de compilación.

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

Soporte en plataformas de pruebas en la nube

Guardar un resultado localmente no funcionará como se espera en las plataformas de pruebas en la nube. Si necesita ayuda para plataformas de pruebas en la nube, envíe una solicitud a helpdesk@deque.com o a support.deque.com.