Riferimento sugli eventi del servizio di utilizzo

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

Informazioni sulle proprietà della versione 2 dell'evento del servizio di utilizzo

Not for use with personal data

Questo articolo contiene informazioni di riferimento su:

  • I dati dell'evento che vengono inviati al servizio di utilizzo (versione 2 dell'oggetto evento, EventV2)
  • Il suo oggetto applicationProperties contenuto
  • L'oggetto testResults (contenuto all'interno dell'oggetto applicationProperties) quando AXE_INCLUDE_TEST_RESULTS è impostato su true

Evento Versione 2

La seguente interfaccia TypeScript definisce un evento di versione 2:

interface EventV2 {
  version: 'v2'
  productName: string
  productComponent: string
  productComponentVersion: string
  event: string
  dateTime: Date
  keycloakId?: string
  distinctId: string
  userId?: string
  organization?: string
  department?: string
  application?: string
  devInstance?: boolean
  sessionId?: string
  userStatus?: string
  loggedIn?: boolean
  applicationProperties?: Record<string, any>
  userJobRole?: string
  actor?: 'human' | 'automation'
  teams?: { id: string; name: string }[]
}
Nome Descrizione
attore Che si tratti di una persona (human) o di una pipeline automatizzata (automation) che ha eseguito il test. Impostato dal CLI, dalle API di Node.js e dall'API Ruby. Vedi attore.
application L'applicazione che ha creato questo evento
proprietàApplicazione proprietàApplicazione definito di seguito
dateTime Data e ora (al millisecondo) in formato ISO-8601, fuso orario UTC
department Il dipartimento dell'utente all'interno dell'organizzazione
devInstance Se questo utilizzo è considerato un'istanza di sviluppo e probabilmente dovrebbe essere filtrato
distinctId L'id univoco dell'utente
event Tipo di evento come stringa, di solito valori "analyze" o "uri: analyze"
keycloakId L'ID Keycloak dell'utente
loggedIn Se l'utente è connesso
organization L'organizzazione dell'utente
productComponent Impostato dalle API per indicare diverse integrazioni come Playwright
productComponentVersion Una stringa che indica la versione del componente del prodotto
productName Impostato dalle API per indicare l'integrazione in uso
sessionId Un uuid che identifica la sessione (per consentire il raggruppamento degli eventi)
squadre Le squadre che eseguono il test, come un array di oggetti { id, name }. Impostato dal CLI, dalle API di Node.js e dall'API Ruby. Vedi squadre.
userId L'ID dell'utente
userJobRole La posizione lavorativa dell'utente
statoUtente Lo stato dell'utente
versione Una stringa che specifica la versione dell'evento, sempre 'v2'

distinctId

Il valore distinctId è un uuid impostato per ciascun utente ogni volta che le metriche vengono registrate. Dovrebbe essere stabile nel tempo perché viene impostato al primo avvio del CLI o del codice che utilizza le API. È memorizzato nel file .deque/distinct_id nella directory home di ciascun utente.

attore

Il CLI, le API di Node.js e l'API Ruby impostano actor su automation quando una di queste variabili d'ambiente è impostata su un valore diverso da false o 0: CI, BUILD_NUMBER, BUILDKITE, CIRCLECI, CODEBUILD_BUILD_ID, GITHUB_ACTIONS, GITLAB_CI, JENKINS_URL, TEAMCITY_VERSION, TF_BUILD o BITBUCKET_BUILD_NUMBER. Altrimenti, actor è human. Imposta la variabile d'ambiente AXE_ACTOR a human o automation per ignorare la rilevazione. Il pacchetto @axe-devtools/browser non può leggere le variabili d'ambiente quando viene eseguito in un browser, quindi lì riporta human.

squadre

L'array teams registra i squadre i cui membri hanno eseguito il test. Il CLI, le API di Node.js e l'API Ruby lo inviano sempre, come un array vuoto ([]) quando non sono impostate squadre. Fornisci tu stesso le squadre, con la variabile d'ambiente AXE_TEAMS, l'opzione --set-teams del CLI, il metodo setTeams della tua API di Node.js o la clausola for_teams o proprietà di configurazione teams dell'API Ruby. Ogni squadra è un oggetto con proprietà stringa id e name:

[{ "id": "1", "name": "Web" }]

Le voci senza una stringa id e name vengono scartate. Un valore che non può essere letto o che non è un array JSON viene ignorato, e l'evento viene comunque inviato.

proprietàApplicazione

L'oggetto applicationProperties contiene informazioni sul conteggio dell'esecuzione del test, come mostra l'esempio seguente:

  applicationProperties: {
    advancedRules: { enabled: false, value: 'disabled', source: 'unavailable' },
    target: 'https://broken-workshop.dequelabs.com/',
    targetMedium: 'text/html',
    urlCount: 1,
    engineVersion: '4.14.0',
    failedRuleCount: 2,
    failedRuleNames: 'color-contrast,label',
    failedItemCount: 5,
    criticalIssueCount: 3,
    seriousIssueCount: 2,
    moderateIssueCount: 0,
    minorIssueCount: 0,
    needsReviewItemCount: 4,
    inapplicableRuleCount: 39,
    incompleteRuleCount: 2,
    passedRuleCount: 21,
    testResults: {}
  },
Proprietà Descrizione
regoleAvanzate Se sono state eseguite regole avanzate. Il CLI, le API di Node.js e l'API Ruby non eseguono mai regole avanzate, quindi questo è sempre { enabled: false, value: 'disabled', source: 'unavailable' }.
comando Il comando CLI che ha eseguito la scansione, come spec o bulk-spec. Inviato solo dal CLI.
conteggioProblemiCritici Numero di elementi con impatto critico non funzionanti
versioneMotore La versione di axe-core utilizzata per il test
conteggioElementiFalliti Numero totale di errori di accessibilità trovati sulla pagina web
conteggioRegoleFallite Numero di regole che non sono state superate sulla pagina
nomiRegoleFallite Stringa separata da virgole dei nomi delle regole non superate
conteggioRegoleInapplicabili Numero di regole che non sono state applicate
conteggioProblemiMinori Numero di elementi con impatto minore non funzionanti
conteggioProblemiModerati Numero di elementi con impatto moderato non funzionanti
conteggioElementiDaRevisionare Numero di elementi che necessitano di revisione
conteggioRegoleIncomplete Numero di regole che erano incomplete
conteggioRegoleSuperate Numero di regole che sono state superate
conteggioProblemiGravi Numero di elementi con impatto grave non funzionanti
target URL testato
mezzoDiDestino Tipo MIME di destinazione. Nominato target_medium prima della versione 4.14.0.
risultatiTest L'oggetto testResults, vedere la sezione successiva per maggiori informazioni
conteggioURL Numero di URL distinti analizzati. Una pagina specifica del CLI le cui azioni navigano e analizzano di nuovo, riporta più di 1.

risultatiTest

L'oggetto testResults è definito come un oggetto axeResults (definito da axe-core). Viene impostato solo quando si è impostata la variabile d'ambiente AXE_INCLUDE_TEST_RESULTS su true, che è supportato solo dal CLI e dalle API di Node.js.

interface AxeResults extends EnvironmentData {
  toolOptions: RunOptions;
  passes: Result[];
  violations: Result[];
  incomplete: Result[];
  inapplicable: Result[];
}

Il seguente esempio mostra un oggetto testResults:

{
  testEngine: {
    name: "axe-core",
    version: "4.4.1"
  },
  testRunner: {
    name: "axe"
  },
  testEnvironment: {
    userAgent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML,like Gecko) Version/16.0 Safari/605.1.15",
    windowWidth: 1280,
    windowHeight: 720
  },
  timestamp: "2023-02-02T20:09:04.785Z",
  url: "https://broken-workshop.dequelabs.com/",
  toolOptions: {
    reporter: "v1"
  },
  inapplicable: [],
  passes: [],
  incomplete: [],
  violations: []
}

Per brevità, gli array inapplicable, passes, incomplete e violations, che normalmente contengono oggetti Result, non sono stati inclusi.

Puoi vedere le definizioni TypeScript per questi oggetti nel repo di GitHub di axe-core.

Vedi Anche

Per tutorial che dimostrano come utilizzare il servizio di utilizzo, vedi Iniziare con il Servizio di Utilizzo e le API e Iniziare con il Servizio di Utilizzo e la CLI.

Per informazioni generali sul servizio di utilizzo, vedi Il servizio di utilizzo di Axe DevTools per il Web.