Prise en main du Usage Service et du CLI
Un tutoriel pour suivre les métriques d'utilisation via le Usage Service avec le CLI
Cet article montre comment utiliser le Usage Service avec le CLI. Vous serez guidé dans la configuration d'un serveur local pour echo aux événements de service d'utilisation, vous apprendrez comment envoyer des métriques d'utilisation au serveur à l'aide de la CLI et comment modifier les événements de service d'utilisation à l'aide de variables d'environnement.
Le service d'utilisation vous permet de suivre les mesures d'utilisation de la CLI par votre organisation. L'activation du service d'utilisation peut être un outil important pour votre organisation pour effectuer la surveillance de la conformité des licences, les audits de test et garantir que toutes les instances d'axe DevTools for Web sont configurées selon les normes de votre organisation.
L'envoi d'événements d'utilisation au service d'utilisation est un processus distinct de l'envoi de résultats d'accessibilité JSON aux axe Reports. Consultez Création de rapports avec l'interface de ligne de commande pour plus d'informations sur la création de rapports.
Pour obtenir des informations générales sur le service d'utilisation, consultez Le service d'utilisation axe DevTools.
Prérequis
Vous devez installer Node.js pour utiliser cet exemple. Voir Node.js pour le programme d'installation de Node.js.
Mise en place d'un Serveur Echo
Créez un fichier contenant le code ci-dessous :
const express = require('express')
const bodyParser = require('body-parser')
const app = express()
// Parse JSON bodies.
app.use(bodyParser.json())
// Accept events.
app.post('/:version/event', (req, res) => {
const event = req.body
console.log(event)
// Respond so the client is happy.
res.status(200)
res.send('Event accepted!')
})
// Listen for requests.
app.listen(3000)
Nous appellerons le fichier echo-server.js. Enregistrez-le dans un nouveau répertoire et changez à ce répertoire.
Le serveur écoute les requêtes sur le port 3000 et écrit le corps de la requête reçue sur la console. Ainsi, chaque fois qu'un client API ou un test CLI est exécuté (et que la journalisation de l'utilisation est activée), le serveur d'écho écrit l'événement d'utilisation reçu.
Installez express et body-parser, deux dépendances requises pour exécuter le code ci-dessus :
npm i express body-parser
Démarrez le serveur echo :
node echo-server.js
Tester un site avec la CLI
Vous devez maintenant définir deux variables d'environnement : premièrement, pour activer le service d'utilisation et, deuxièmement, pour fournir l'URL du serveur (le serveur local créé dans la section précédente) :
- export AXE_TRACK_USAGE=true
- export AXE_METRICS_URL=
http://localhost:3000
Sous Linux ou macOS, vous pouvez définir les variables d'environnement et invoquer une analyse CLI d'un site Web sur une seule ligne, comme indiqué ici :
AXE_TRACK_USAGE=true AXE_METRICS_URL=http://localhost:3000 axe https://broken-workshop.dequelabs.com/
La définition des variables d’environnement comme indiqué ci-dessus ne fonctionne que sur les machines Linux et macOS. Pour Windows, vous devez utiliser set sur une ligne séparée :
set AXE_TRACK_USAGE=true
set AXE_METRICS_URL=http://localhost:3000
Si vous souhaitez conserver les valeurs entre les redémarrages sous Windows, vous pouvez utiliser setx (sans signe égal) :
setx AXE_TRACK_USAGE true
setx AXE_METRICS_URL http://localhost:3000
Cette commande exécute une analyse à l'aide de la CLI sur le site https://broken-workshop.dequelabs.com.
Revenez à la fenêtre de la console où vous exécutez le serveur echo et vous verrez les événements reçus du serveur echo, un exemple d'événement est affiché ci-dessous :
{
dateTime: '2023-01-20T20:48:16.864Z',
productComponent: 'api-cli',
productName: 'axe-devtools-html',
version: 'v2',
event: 'uri: analyze',
distinctId: 'f542d302-18a0-42a6-ab7f-ec1e42399bfe',
applicationProperties: {
target: 'https://broken-workshop.dequelabs.com/',
target_medium: 'text/html',
engineVersion: '4.5.2',
failedRuleCount: 2,
failedRuleNames: 'color-contrast,image-alt',
failedItemCount: 12,
inapplicableRuleCount: 33,
incompleteRuleCount: 0,
passedRuleCount: 27,
testResults: {}
}
}
Pour plus d'informations sur l'objet événement, voir L'objet événement.
Modification de l'événement à l'aide de variables d'environnement
Vous pouvez utiliser des variables d’environnement pour modifier les propriétés de l’événement signalé. Par exemple, vous pouvez modifier ou ajouter la propriété userJobRole en définissant la variable d'environnement AXE_USER_JOB_ROLE :
AXE_TRACK_USAGE=true AXE_METRICS_URL=http://localhost:3000 AXE_USER_JOB_ROLE="testing" axe https://broken-workshop.dequelabs.com/
Un exemple des événements reçus par le serveur echo est présenté ci-dessous :
{
dateTime: '2023-01-20T20:52:23.878Z',
productComponent: 'api-cli',
productName: 'axe-devtools-html',
version: 'v2',
event: 'uri: analyze',
distinctId: '9c55a1f8-5177-44ee-a0e3-5dafa5ef9fc9',
applicationProperties: {
target: 'https://broken-workshop.dequelabs.com/',
target_medium: 'text/html',
engineVersion: '4.5.2',
failedRuleCount: 2,
failedRuleNames: 'color-contrast,image-alt',
failedItemCount: 12,
inapplicableRuleCount: 33,
incompleteRuleCount: 0,
passedRuleCount: 27,
testResults: {}
},
userJobRole: 'testing'}
La propriété userJobRole a été ajoutée en définissant la variable d'environnement AXE_USER_JOB_ROLE comme indiqué par la ligne en surbrillance.
Pour définir d'autres propriétés dans l'événement, voir Contrôle du service d'utilisation via des variables d'environnement.
Prochaines étapes
Pour suivre une version de ce tutoriel pour les API axe DevTools, voir Premiers pas avec le service d'utilisation et les API.
Pour obtenir des informations générales sur le service d'utilisation, consultez Le service d'utilisation. Pour obtenir des informations de référence sur l'objet événement, consultez The Usage Service Event Reference.