Generare Report all'interno di CI/CD
Con Axe DevTools Reporter, puoi ora generare report autonomi direttamente all'interno del tuo pipeline di integrazione e distribuzione continua (CI/CD).
Segui i passaggi di base di seguito per integrare il reporter nel tuo pipeline Android o iOS.
Integrazione in un Pipeline Android
Configura i tuoi Test Automatizzati
-
Aggiorna i tuoi test automatizzati per salva i risultati localmente, che possono poi essere usati per generare il report.
-
Aggiungi lo script seguente al file
build.gradledella tua app, sotto il bloccoandroid, e assicurati che non sia all'interno di un altro task Gradle. Aggiungi il nome del pacchetto della tua app nella variabilepackageName. Questo script sposterà i risultati generati dal tuo test automatizzato nella directory dei report nella 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
}
}
}Passaggi per Generare il Report
- Accedi alla nostra artifactory privata, Agora, con le tue credenziali Deque.
- Dal menu a discesa "Bentornato, <tuo_email>", seleziona 'Modifica Profilo'.
- Clicca su 'Genera un Token di Identità'.
- Si aprirà una finestra di dialogo che mostrerà l'opzione per copiare il Token di Riferimento.
- Crea un nome distintivo per il Token di Identità e aggiungilo nella descrizione. L'esempio seguente utilizza
AGORA_IDENTITY_TOKENcome nome - Seleziona 'Avanti'.
- Nella prossima finestra di dialogo, copia il tuo Token di Identità per utilizzarlo nello script qui sotto. Per un pipeline automatizzato, considera di rendere disponibile questo token nelle variabili d'ambiente o nei segreti del progetto per la tua piattaforma.
Il Token di Identità è accessibile solo dalla finestra di dialogo e non sarà possibile visualizzarlo di nuovo una volta chiusa la finestra. Questo token scadrà 11 mesi e 30 giorni dopo la sua creazione.
- Prima di eseguire i tuoi test o build, recupera il reporter. Ecco uno script per iniziare:
# 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-
Compila la tua app ed esegui i tuoi test
-
Una volta terminati i test, esegui il reporter e specifica il percorso del file dei risultati JSON.
DEQUE_RESULTS="../ContainingFolder"
/Users/runner/reporter ${DEQUE_RESULTS} "AxeReport" --format=htmlPersonalizza il tuo formato di output (--format) con html, junit o csv.
Integrazione in un Pipeline iOS
Configura i tuoi Test Automatizzati
Aggiorna i tuoi test automatizzati per salva i risultati localmente, che possono poi essere usati per generare il report.
Passaggi per Generare il Report
- Accedi alla nostra artifactory privata, Agora, con le tue credenziali Deque.
- Dal menu a discesa "Bentornato, <tuo_email>", seleziona "Modifica Profilo".
- Clicca su 'Genera un Token di Identità'.
- Si aprirà una finestra di dialogo che mostrerà l'opzione per copiare il Token di Riferimento.
- Crea un nome distintivo per il Token di Identità e aggiungilo nella descrizione. L'esempio seguente utilizza
AGORA_IDENTITY_TOKENcome nome. - Seleziona 'Avanti'.
- Nella prossima finestra di dialogo, copia il tuo Token di Identità per utilizzarlo nello script qui sotto. Per un pipeline automatizzato, considera di rendere disponibile questo token nelle variabili d'ambiente o nei segreti del progetto per la tua piattaforma.
Il Token di Identità è accessibile solo dalla finestra di dialogo e non sarà possibile visualizzarlo di nuovo una volta chiusa la finestra. Questo token scadrà 11 mesi e 30 giorni dopo la sua creazione.
- Prima di eseguire i tuoi test o build, recupera il reporter. Ecco uno script utile per iniziare:
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-
Compila la tua app ed esegui i tuoi test.
-
Una volta terminati i test, esegui il reporter e specifica il percorso del file dei risultati JSON.
DEQUE_RESULTS="../ContainingFolder"
/Users/runner/reporter ${DEQUE_RESULTS} "AxeReport" --format=htmlPersonalizza il tuo formato di output (--format) con html, junit o csv.
