Salva i risultati della scansione localmente
Quando si salvano i risultati della scansione in locale, è possibile utilizzare il risultato JSON per integrare le metriche di accessibilità in diversi strumenti di reporting. Puoi anche creare un report HTML da condividere via e-mail o chat per informare il tuo team sullo stato di accessibilità del test eseguito.
Il salvataggio dei risultati in locale è supportato solo nei test automatizzati.
Salva e condividi i risultati
Utilizzare il seguente codice per salvare i risultati del test sul dispositivo fisico effettivo o sull'emulatore come file. .json
Il parametro "prefix"
sarà l'inizio del nome del file con cui si desidera salvare il risultato.
axe.scan()?.saveResultToLocalStorage("prefix")
Nota: è possibile modificare il nome della scansione prima di salvare il risultato.
Usa i risultati per la reportistica
Sfrutta i risultati della scansione per la creazione di report spostando i file JSON nella cartella di build del tuo progetto. È quindi possibile utilizzare axe DevTools Reporter CLI per creare un report HTML da un set di scansioni. In alternativa, è possibile accedere ai file dei risultati programmaticamente per integrare le metriche di accessibilità con strumenti di reporting interni.
Aggiungi il seguente script al file della tua app, sotto il blocco, e assicurati che non si trovi in un'altra attività Gradle. build.gradle
android{...}
Aggiungi il nome del pacchetto dell'app nella packageName
variabile.
Lo script seguente copierà i report generati salvando i risultati localmente sul tuo emulatore o dispositivo e li sposterà nella directory dei report della tua cartella di 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
}
}
}
Supporto sulle piattaforme di test cloud
Il salvataggio di un risultato in locale non funzionerà come previsto sulle piattaforme di test cloud. Se hai bisogno di supporto per le piattaforme di test cloud, invia una richiesta a helpdesk@deque.com o su support.deque.com.