Enregistrer les résultats de l'analyse localement
Lorsque vous enregistrez les résultats d’analyse localement, vous pouvez utiliser le résultat JSON pour intégrer des mesures d’accessibilité dans différents outils de création de rapports. Vous pouvez également créer un rapport HTML à partager par e-mail ou par chat, pour informer votre équipe de l'état d'accessibilité de votre test.
L'enregistrement local des résultats n'est pris en charge que dans le cadre des tests automatisés.
Enregistrer et Partager les résultats
Créez un répertoire « reports » dans votre répertoire personnel où vous enregistrerez les résultats JSON. Reportez-vous aux exemples ci-dessous.
Ruby
require 'json'
require 'fileutils'
#
# Set up driver and capabilities here before scanning
#
# Start Scan Here
axeSettings = { apiKey: '<your-api-key-here>' }
scanResult = @driver.execute_script 'mobile: axeScan', axeSettings
# Convert result to JSON string
json_result = JSON.pretty_generate(scanResult)
# Create timestamp for filename
timestamp = Time.now.strftime('%Y-%m-%dT%H-%M-%S')
filename = "axe-scan-result-#{timestamp}.json"
# Create reports directory
reports_dir = File.join(Dir.home, 'reports', 'axeScans')
FileUtils.mkdir_p(reports_dir)
# Save to file
filepath = File.join(reports_dir, filename)
File.write(filepath, json_result)
puts "Axe scan result saved to: #{filepath}"Javascript
const fs = require('fs');
const path = require('path');
//
// Set up driver and capabilities here before scanning
//
// Start axeScan
const axeSettings = { apiKey: '<your-api-key-here>' }
const scanResult = await driver.execute('mobile:axeScan', axeSettings)
// Convert result to JSON string
const jsonResult = JSON.stringify(scanResult, null, 2);
// Create timestamp for filename
const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
const filename = `axe-scan-result-${timestamp}.json`;
// Create reports directory
const reportsDir = path.join(require('os').homedir(), 'reports', 'axeScans');
fs.mkdirSync(reportsDir, { recursive: true });
// Save to file
const filepath = path.join(reportsDir, filename);
fs.writeFileSync(filepath, jsonResult, 'utf8');
console.log(`Axe scan result saved to: ${filepath}`);Python
import json
from datetime import datetime
from pathlib import Path
#
# Set up driver and capabilities here before scanning
#
# Start axeScan
axeSettings = { 'apiKey': '<your-api-key-here>' }
scan_result = driver.execute_script('mobile: axeScan', axeSettings)
# Convert result to JSON string
json_result = json.dumps(scan_result, indent=2)
# Create timestamp for filename
timestamp = datetime.now().strftime('%Y-%m-%dT%H-%M-%S')
filename = f"axe-scan-result-{timestamp}.json"
# Create reports directory
reports_dir = Path.home() / 'reports' / 'axeScans'
reports_dir.mkdir(parents=True, exist_ok=True)
# Save to file
filepath = reports_dir / filename
filepath.write_text(json_result, encoding='utf-8')
print(f"Axe scan result saved to: {filepath}")Java
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Map;
//
// Set up driver and capabilities here before scanning
//
// Start axeScan
Map<String, String> axeSettings = Map.of("apiKey", "<your-api-key-here>");
Object scanResult = driver.executeScript("mobile: axeScan", axeSettings);
// Convert result to JSON string
Gson gson = new GsonBuilder().setPrettyPrinting().create();
String jsonResult = gson.toJson(scanResult);
// Create timestamp for filename
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH-mm-ss");
String timestamp = LocalDateTime.now().format(formatter);
String filename = "axe-scan-result-" + timestamp + ".json";
// Create reports directory
Path reportsDir = Paths.get(System.getProperty("user.home"), "reports", "axeScans");
Files.createDirectories(reportsDir);
// Save to file
Path filepath = reportsDir.resolve(filename);
Files.write(filepath, jsonResult.getBytes());
System.out.println("Axe scan result saved to: " + filepath.toString());Kotlin
import com.google.gson.Gson
import com.google.gson.GsonBuilder
import java.nio.file.Files
import java.nio.file.Paths
import java.time.LocalDateTime
import java.time.format.DateTimeFormatter
//
// Set up driver and capabilities here before scanning
//
// Start axeScan
val axeSettings = mapOf("apiKey" to "<your-api-key-here>")
val scanResult = driver.executeScript("mobile: axeScan", axeSettings)
// Convert result to JSON string
val gson = GsonBuilder().setPrettyPrinting().create()
val jsonResult = gson.toJson(scanResult)
// Create timestamp for filename
val formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH-mm-ss")
val timestamp = LocalDateTime.now().format(formatter)
val filename = "axe-scan-result-$timestamp.json"
// Create reports directory
val reportsDir = Paths.get(System.getProperty("user.home"), "reports", "axeScans")
Files.createDirectories(reportsDir)
// Save to file
val filepath = reportsDir.resolve(filename)
Files.write(filepath, jsonResult.toByteArray())
println("Axe scan result saved to: $filepath")C#
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.IO;
//
// Set up driver and capabilities here before scanning
//
// Start axeScan
var axeSettings = new Dictionary<string, object> { { "apiKey", "<your-api-key-here>" } };
var scanResult = _driver.ExecuteScript("mobile: axeScan", axeSettings);
// Convert result to JSON string
string jsonResult = JsonConvert.SerializeObject(scanResult, Formatting.Indented);
// Create timestamp for filename
string timestamp = DateTime.Now.ToString("yyyy-MM-ddTHH-mm-ss");
string filename = $"axe-scan-result-{timestamp}.json";
// Create reports directory
string reportsDir = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile),
"reports", "axeScans");
Directory.CreateDirectory(reportsDir);
// Save to file
string filepath = Path.Combine(reportsDir, filename);
File.WriteAllText(filepath, jsonResult);
Console.WriteLine($"Axe scan result saved to: {filepath}");Utiliser les résultats pour les rapports
Utilisez l'axe DevTools Reporter CLI pour créer un rapport HTML à partir d'un ensemble d'analyses. Vous pouvez également accéder aux fichiers de résultats par programmation pour intégrer les mesures d’accessibilité aux outils de reporting internes.
