Guardar los resultados de escaneo localmente
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.