Salvar Resultados da Varredura Localmente
Quando você salva os resultados da varredura localmente, pode usar o resultado JSON para integrar métricas de acessibilidade em diferentes ferramentas de relatórios. Você também pode criar um relatório em HTML para compartilhar por e-mail ou chat, a fim de notificar sua equipe sobre a saúde da acessibilidade da sua execução de teste.
Salvar resultados localmente é suportado apenas em testes automatizados.
Salvar e Compartilhar Resultados
Use o seguinte código para salvar os resultados de teste no dispositivo físico real ou emulador como um .json arquivo. O "prefix" parâmetro será o início do nome do arquivo que você deseja salvar o resultado.
axe.scan()?.saveResultToLocalStorage("prefix")Nota: Você pode alterar o nome da varredura antes de salvar o resultado.
Usar Resultados para Relatórios
Aproveite os resultados da varredura para relatórios movendo os arquivos JSON para a pasta de build do seu projeto. Em seguida, você pode utilizar o axe DevTools Reporter CLI para criar um relatório em HTML a partir de um conjunto de varreduras. Alternativamente, você pode acessar os arquivos de resultado programaticamente para integrar métricas de acessibilidade com ferramentas internas de relatórios.
Adicione o seguinte script ao build.gradle arquivo do seu app, abaixo do android{...} bloco, e certifique-se de que não está dentro de outra tarefa Gradle. Adicione o nome do pacote do seu app na packageName variável.
O script abaixo irá copiar os relatórios gerados a partir do salvamento dos resultados localmente no seu emulador ou dispositivo e movê-los para o diretório de relatórios da sua pasta de 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
}
}
}Suporte em Plataformas de Teste na Nuvem
Salvar um resultado localmente não funcionará como esperado em Plataformas de Teste na Nuvem. Se você precisar de suporte para Plataformas de Teste na Nuvem, por favor envie uma solicitação para helpdesk@deque.com ou para support.deque.com.
