Utilisation avancée de l'API avec Ruby

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Utilisation avancée d'Axe DevTools pour le Web avec Ruby, y compris les règles personnalisées, les options de rapport et le service d'utilisation

Not for use with personal data

Ce document aborde les règles personnalisées, les options de rapport et le service d'utilisation avec Ruby.

Règles personnalisées

Vous pouvez spécifier des règles axe personnalisées dans un fichier JSON.

note

Si vous n'avez pas encore de règles personnalisées et souhaitez commencer avec un ensemble de règles vide, créez un fichier axe-ruleset.json dans le répertoire local avec un objet JavaScript vide, par exemple : {}.

Configurer les règles personnalisées via une variable d'environnement

La configuration par défaut attend que l'emplacement du fichier des règles personnalisées soit config/axe-ruleset.json, relatif au répertoire de travail actuel.

Vous pouvez remplacer cet emplacement avec la variable d'environnement AXE_RULESET_PATH ou manuellement via la configuration Axe DevTools.

Définissez la variable d'environnement AXE_RULESET_PATH pour changer l'emplacement de votre axe-ruleset.json :

AXE_RULESET_PATH=/path/to/your/axe-ruleset.json

Configuration des règles personnalisées via la configuration Axe DevTools

Un objet de configuration est disponible pour définir un emplacement de règle personnalisée en utilisant la méthode AxeDevTools.configure si vous ne souhaitez pas travailler avec la variable d'environnement AXE_RULESET_PATH.

Tous les paramètres ci-dessous sont facultatifs. Vous pouvez omettre l'invocation de AxeDevTools.configure pour utiliser les valeurs par défaut d'origine.

AxeDevTools.configure do |config|
  # path to json configuration providing custom rules and checks
  # set defaults to "config/axe-ruleset.json"
  config.axe_ruleset_path = "config/axe-ruleset.json"

  # Configure user pre-defined standard rule sets. Custom
  # rules override these rule sets. See https://github.com/dequelabs/axe-core/blob/develop/doc/rule-descriptions.md
  config.rule_set_id = '508'
end

Options de rapport

Configuration des options de rapport avec la configuration Axe DevTools

Les gems axe-devtools-* permettent d'enregistrer les résultats des tests. Utilisez l'invocation AxeDevTools.Configure pour configurer une configuration globale pour les rapports :

AxeDevTools.configure do |config|
  config.output_directory: 'my-results',
  config.test_machine: 'my-server',
  config.test_suite_name: 'Accessibility Tests For Application',
  config.user_agent: 'Headless Chrome'
end

expect(page).to be_audited_for_accessibility.logging_results({
  ui_state: 'Landing Page Load',
})

La configuration des rapports peut prendre les propriétés suivantes :

Attribut Valeur par défaut Description
ui_state (Obligatoire) Attribut à passer dans l'objet options.
output_directory (Optionnel) axe-reports Nom du répertoire dans lequel les rapports doivent être générés.
test_machine (Optionnel) Valeur pour indiquer où le test est exécuté. Par ex., CircleCI, TesterMachine01
test_suite_name (Optionnel) axe-a11yCheck Nom de la suite pour les tests. Par ex., My Module Test Suite
user_agent (Optionnel) null Passez un agent utilisateur cible. Par ex., chrome.
verbose (Optionnel) false drapeau pour activer/désactiver la journalisation détaillée de la trace de pile et des messages.

Notez également que toutes les options ci-dessus pour AxeDevTools.configure peuvent être passées lors de la configuration du WebDriver de votre choix. Par exemple :

require 'axe-devtools-capybara'

AxeCapybara.configure do |config|
 config.axe_config_path = 'config/my-ruleset.json'
end

Voir aussi

Service d'utilisation

Vous pouvez obtenir un aperçu des tendances d'utilisation d'Axe DevTools au sein de votre organisation avec le service d'utilisation.

Par défaut, le service d'utilisation est activé, et l'URL de suivi est https://usage.deque.com.

note

Dans l'API Ruby, utilisez la propriété de configuration enableTracking décrite ci-dessous pour désactiver le suivi d'utilisation, plutôt que la variable d'environnement AXE_TRACK_USAGE. Si vos événements d'utilisation n'atteignent pas Deque, définissez explicitement l'URL de suivi avec setTrackingUrl.

Configuration des options du service d'utilisation avec la configuration AxeDevTools

Les gems axe-devtools-* permettent de configurer le service d'utilisation via une configuration globale :

AxeDevTools.configure do |config|
  config.setTrackingUrl: 'https://usage.deque.com',
end

Les propriétés spécifiques de configuration du service d'utilisation sont :

Attribut Valeur par défaut Description
enableTracking true Option pour activer le suivi de l'utilisation.
setTrackingUrl https://usage.deque.com Option de remplacer l'URL de suivi.

De plus, notez que toutes les options ci-dessus pour AxeDevTools.configure peuvent également être transmises lors de la configuration du WebDriver de votre choix. Par exemple, pour Capybara :

require 'axe-devtools-capybara'

AxeCapybara.configure do |config|
 config.enableTracking = false
end

Configurer les options du service d'utilisation avec des variables d'environnement

En outre, les options du service d'utilisation peuvent être configurées via des variables d'environnement.

Nom Type Peut remplacer Description
AXE_DISTINCT_ID Chaîne de caractères Un identifiant UUID qui reste le même pour l'utilisateur connecté (sauf s'il est régénéré). En Ruby, cette variable est nommée DEQUE_DISTINCT_ID.
AXE_INCLUDE_TEST_RESULTS Booléen Définir sur true pour inclure les résultats complets de axe-core dans l'objet testResults de chaque événement (la valeur par défaut est false). Pris en charge uniquement par la CLI et les API Node.js.
AXE_METRICS_URL Chaîne de caractères L'URL du point de terminaison de l'utilisation REST (la valeur par défaut est https://usage.deque.com)
AXE_TRACK_USAGE Booléen Définir sur false pour désactiver le rapport de service d'utilisation. Le rapport est activé par défaut.
AXE_APPLICATION Chaîne de caractères faux L'application qui a été utilisée pour vérifier les erreurs d'accessibilité
AXE_DEV_INSTANCE Booléen vrai Indique si cet événement provient d'actions d'un développeur logiciel. Utile pour marquer et supprimer ensuite les événements enregistrés pendant le développement ou les tests.
AXE_DEPARTMENT Chaîne de caractères vrai Le département de l'utilisateur au sein de l'organisation
AXE_KEYCLOAK_ID Chaîne de caractères faux L'ID Keycloak de l'utilisateur
AXE_LOGGED_IN Booléen faux Enregistre si l'utilisateur est connecté à l'application en test
AXE_ORGANIZATION Chaîne de caractères vrai L'organisation de l'utilisateur. Pour que votre utilisation apparaisse dans Axe Reports, définissez ceci sur l'ID de votre organisation (contactez Deque pour l'obtenir).
AXE_SESSION_ID Chaîne de caractères faux Un UUID identifiant la session de l'utilisateur
AXE_USER_ID Chaîne de caractères faux L'identité d'un utilisateur spécifique, telle qu'une adresse e-mail, un nom ou un identifiant de connexion. Axe Reports compte les utilisateurs uniques à partir de cette valeur.
AXE_USER_JOB_ROLE Chaîne de caractères faux Le rôle professionnel de l'utilisateur
AXE_USER_STATUS Chaîne de caractères faux Informations de statut que vous souhaitez associer à l'utilisateur