Riferimento API C#

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
Not for use with personal data

Classi C# di Axe DevTools

Questa pagina documenta le classi che compongono axe DevTools C#

class Deque.AxeDevtools.Selenium.AxeSelenium

L'interfaccia per axe. Contiene configurazioni per modificare il modo in cui funziona axe e la possibilità di utilizzarlo.

Campo statico Tipo Descrizione
defaultAxeSource string La stringa axe-core predefinita che verrà utilizzata.

AxeSelenium(OpenQA.Selenium.Remote.RemoteWebDriver, ReportConfiguration?, stringa)

Crea un nuovo oggetto AxeSelenium per una pagina con una configurazione specifica.

Param Descrizione
webdriver Oggetto Selenium della pagina da testare. Dovrebbe essere nello stato pronto per il test.
reportConfiguration Configurazione per varie informazioni specifiche del report. Impostato di default su ReportConfiguration.GetDefault()
axeSource sorgente axe-core da utilizzare. Impostato di default su AxeSelenium.defaultAxeSource

Risultati rapportoAnalizza()

Esegui axe sulla pagina.

Restituisce: il report ottenuto eseguendo axe-core sulla pagina.

var report = new AxeSelenium(driver).Analyze();

AxeSelenium Configura(Specifiche)

Configura axe. Fatto tramite axe.configure

Param Descrizione
spec Oggetto Spec da passare.

Restituisce: Questo oggetto per il concatenamento.

var spec = new Spec.Spec {
    Checks = new Spec.Check[] {
        new Spec.Check() {
            Id = "dylang",
            Options = (object) new string[] { "dylan" },
            Evaluate = @"function (node, options) {
              var lang = (node.getAttribute('lang') || '').trim().toLowerCase();
              var xmlLang = (node.getAttribute('xml:lang') || '').trim().toLowerCase();
              var invalid = [];
              (options || []).forEach(function(cc) {
                cc = cc.toLowerCase();
                if (lang && (lang === cc || lang.indexOf(cc.toLowerCase() + '-') === 0)) {
                  lang = null;
                }
                if (xmlLang && (xmlLang === cc || xmlLang.indexOf(cc.toLowerCase() + '-') === 0)) {
                  xmlLang = null;
                }
              });
              if (xmlLang) {
                invalid.push('xml:lang='' + xmlLang + ''');
              }
              if (lang) {
                invalid.push('lang='' + lang + ''');
              }
              if (invalid.length) {
                this.data(invalid);
                return true;
              }
              return false;
            }"
        }
    },
    Rules = new Spec.Rule[] {
        new Spec.Rule() {
            Id = "dylang",
            Selector = "html",
            Tags = new string[] { "wcag2aa" },
            All = new string[0],
            Any = new string[0],
            None = new string[] { "dylang" }
        }
    }
};
var report = new AxeSelenium(driver)
  .Configure(spec)
  .Analyze()

AxeSeleniumDisabilitareRegole(stringa[])

Disattiva alcune regole quando esegui axe.

Param Descrizione
rules Elenco degli id delle regole.

Restituisce: Questo oggetto per il concatenamento.

var report = new AxeSelenium(driver)
  .DisablingRules("html-has-lang", "label")
  .Analyze()

AxeSeleniumEsclusione(stringa[])

Specifica la parte della pagina da escludere quando si esegue axe.

Param Descrizione
selector Elenco di selettori CSS per gli elementi.

Restituisce: Questo oggetto per il concatenamento.

var report = new AxeSelenium(driver)
  .Excluding(".third-party-ad", ".iframe1")
  .Analyze()

AxeSeleniumInclusione(string[])

Specifica la parte della pagina su cui eseguire axe.

Param Descrizione
selector Elenco di selettori CSS per gli elementi.

Restituisce: Questo oggetto per il concatenamento.

var report = new AxeSelenium(driver)
  .Including(".sidebar", ".some-class")
  .Analyze()

AxeSelenium OpzioniEsecuzione(OpzioniEsecuzione)

Specificare RunOptions da passare ad axe quando si invoca axe.run.

Param Descrizione
opzioni Oggetto da passare

Restituisce: Questo oggetto per il concatenamento.

var options = new RunOptions.RunOptions {
  IFrames = false,
  RunOnly = RunOptions.RunOnly.Tags(RunOptions.TagType.Wcag2a)
};
var report = new AxeSelenium(driver)
  .RunOptions(options)
  .Analyze()

AxeSeleniumConConfigFile(string)

Imposta dove trovare un file di configurazione. Il percorso predefinito è config/axe-ruleset.json o $AXE_RULESET_PATH.

Param Descrizione
percorso Percorso del file di configurazione.

Restituisce: Questo oggetto per il concatenamento.

var report = new AxeSelenium(driver)
  .WithConfigFile("path/to/file.json")
  .Analyze();

AxeSelenium ConRegole(string[] {#axeselenium-withrulesstring})

Specificare le regole (per ID) da utilizzare durante l'esecuzione di axe.

Param Descrizione
rules Elenco degli id delle regole.

Restituisce: Questo oggetto per il concatenamento.

var report = new AxeSelenium(driver)
  .WithRules("document-title", "label")
  .WithRules("html-has-lang")
  .Analyze()

AxeSeleniumConSetDiRegole(string, bool)

Utilizzare un set di regole specifico (ad esempio wcag2.1, 508).

Param Descrizione
rulesetId ID del ruleset da utilizzare.
enableBestPractices Se attivare o meno le regole etichettate best-practice. Impostato di default su false

Restituisce: Questo oggetto per il concatenamento.

var report = new AxeSelenium(driver)
  .WithRuleset("508", true)
  .Analyze()

AxeSelenium ConTag(TipoTag[])

Specificare le regole (tramite tag) da utilizzare durante l'esecuzione di axe.

Param Descrizione
tags Elenco dei tag delle regole.

Restituisce: Questo oggetto per il concatenamento.

var report = new AxeSelenium(driver)
  .WithTags(RunTagType.BestPractice)
  .Analyze()

Variabili ambientali

Questo metodo consente agli utenti di modificare valori specifici del servizio di utilizzo tramite variabili di ambiente

Variabile d'ambiente Tipo
AXE_IS_LOGGED_IN Booleano
AXE_KEYCLOAK_ID String
AXE_UTENTE_ID String
AXE_SESSIONE_ID String
STATO_UTENTE_AXE String
RUOLO_PROFESSIONE_UTENTE_AXE String
AXE_DISTINTO_ID String
ISTANZA_DEV_IS_AXE Booleano
AXE_ORGANIZZAZIONE String
AXE_APPLICAZIONE String
AXE_METRICS_URL String
AXE_TRACCIA_USO Booleano

AxeSeleniumAbilitaTracciamento(bool)

Scegli se inviare o meno i dati al servizio di utilizzo.

Param Descrizione
stato Se il monitoraggio è abilitato

Restituisce: Questo oggetto per il concatenamento.

AxeSeleniumSetTrackingUrl(string)

Imposta dove inviare i dati delle metriche di utilizzo. Impostato di default su https://usage.deque.com

Param Descrizione
url URL dove verrà inviato

Restituisce: Questo oggetto per il concatenamento.

AxeSeleniumSetDistinctId(string)

Imposta un ID distinto da utilizzare durante l'invio delle metriche di utilizzo.

Param Descrizione
id UUID da inviare come id unico

Restituisce: Questo oggetto per il concatenamento.

class Deque.AxeDevtools.Selenium.ReportConfiguration

Configura informazioni specifiche del report come il nome della suite di test o le informazioni dell'agente utente

Campo statico Tipo Descrizione
TIMESTAMP_FORMAT string Formato dei timestamp nei report.

statico ReportConfigurationGetDefault()

Ottiene la configurazione predefinita corrente. Si noti che la configurazione predefinita può essere modificata.

Restituisce: il valore predefinito corrente.

static void ResetDefault()

Ripristina il predefinito al suo stato iniziale.

void SetAsDefault()

Imposta questo oggetto come predefinito.

ReportConfiguration.GetDefault()
  .TestSuiteName("my-tests")
  .UIState("home-page")
  .SetAsDefault();

ReportConfigurationTestMachine(stringa)

Imposta la macchina su cui sono stati eseguiti questi test.

Param Descrizione
testMachine ID della macchina.

Restituisce: Questo oggetto per il concatenamento.

ReportConfigurationTestSuiteName(stringa)

Imposta il nome della suite di test.

Param Descrizione
nome Nome.

Restituisce: Questo oggetto per il concatenamento.

ReportConfigurationUIState(stringa)

Specificare lo stato dell'interfaccia utente per questo set di test. Utilizzato come ID.

Param Descrizione
id State id.

Restituisce: Questo oggetto per il concatenamento.

ReportConfigurationUserAgent(stringa)

Imposta l'agente utente utilizzato durante il test.

Param Descrizione
userAgent Stringa dell'agente utente.

Restituisce: Questo oggetto per il concatenamento.

class Deque.AxeDevtools.Selenium.Results.Check

Il risultato di un controllo di axe.

Campo Tipo Descrizione
Dati oggetto Informazioni aggiuntive specifiche del tipo di controllo, facoltative. Ad esempio, un controllo del contrasto dei colori includerebbe il colore di primo piano, il colore di sfondo, il rapporto di contrasto, ecc.
Id string Identificatore univoco per questo controllo. Gli ID dei controlli potrebbero essere gli stessi degli ID delle Regole.
Impatto string Quanto è serio questo particolare controllo. Può essere "lieve", "moderato", "grave" o "critico". Ogni verifica che fa parte di una regola può avere impatti diversi. Per la regola viene segnalato l'impatto più elevato tra tutti i controlli falliti.
Messaggio Stringa Descrizione del motivo per cui questa verifica è stata superata o fallita.
RelatedNodes List<Nodo> Matrice facoltativa di informazioni su altri nodi correlati a questo controllo. Ad esempio, una violazione del test degli ID duplicati elencherebbe gli altri selettori che avevano lo stesso ID duplicato.

class Deque.AxeDevtools.Selenium.Results.CheckedNode

Un nodo HTML che è stato controllato da una regola.

Campo Tipo Descrizione
Tutti Elenco<Controllo> Array dei controlli effettuati, dove tutti devono essere stati superati.
Qualsiasi Elenco<Controllo> Array dei controlli effettuati, di cui almeno uno deve essere stato superato.
Impatto string Quanto è grave la violazione. Può essere "minore", "moderato", "grave" o "critico" se il test non è riuscito, oppure nullo se il controllo è stato superato.
Nessuno Elenco<Controllo> Array dei controlli effettuati, dove nessuno deve essere stato superato.

class Deque.AxeDevtools.Selenium.Results.Node

Specifica un nodo HTML specifico.

Campo Tipo Descrizione
Html string Frammento di HTML dell'elemento.
Target oggetto Array di stringhe o Array di Array di stringhe. Se l'elemento nell'array è una stringa, allora si tratta di un selettore CSS. Se l'array contiene più elementi, ogni elemento corrisponde a un livello di iframe o frame. Se è presente un iframe o un frame, nel target dovrebbero esserci due voci. Se ci sono tre livelli di iframe, nel target dovrebbero esserci quattro voci. Se l'elemento nell'Array è un Array di stringhe, allora punta a un elemento in un shadow DOM e ogni elemento (tranne l'n-1esimo) in questo array è un selettore per un elemento DOM con un shadow DOM. L'ultimo elemento dell'array punta al nodo shadow DOM finale.

class Deque.AxeDevtools.Selenium.Results.Platform

La piattaforma su cui è stato eseguito il test.

Campo Tipo Descrizione
TestMachine string ID della macchina su cui è stato eseguito il test.
UserAgent string User agent su cui è stato eseguito il test.

class Deque.AxeDevtools.Selenium.Results.ReportResults

Risultati di un test compatibili con il formato del generatore di rapporti.

var axe = new AxeSelenium(driver, ReportConfiguration.GetDefault().UIState("UIState"));
var res = axe.Analyze();
File.WriteAllText(reportPath, JsonConvert.SerializeObject(res));
Campo Tipo Descrizione
EndTime string Quando il test è stato completato.
Risultati Risultati del test Risultati di Axe.
Id string Id per l'esecuzione del test.
Nome string Nome dell'esecuzione del test.
Piattaforma Piattaforma Informazioni sulla piattaforma su cui è stato eseguito il test.
TestSubject TestSubject Informazioni su dove è stato eseguito il test (ad esempio l'URL della pagina web).
Tipo string Tipo di report. È sempre "attest-result".

class Deque.AxeDevtools.Selenium.Results.Rule

Risultato per una singola regola.

Campo Tipo Descrizione
CreatedDate string Data e ora in cui è stata completata l'analisi.
Descrizione string Stringa di testo che descrive lo scopo della regola.
Help string Testo di aiuto che descrive il test eseguito.
HelpUrl stringa URL che fornisce maggiori informazioni sui dettagli della violazione. Link a una pagina del sito della Deque University.
Id string Identificatore univoco per la regola.
Impatto string Quanto è grave la violazione. Può essere "minore", "moderato", "grave" o "critico" se la regola non è stata superata, oppure nullo se il controllo è stato superato.
Nodi Array<NodoControllato> Array di tutti gli elementi testati dalla regola.
Tag Elenco<string> Array dei tag a cui è assegnata questa regola. Questi tag possono essere utilizzati nella struttura delle opzioni per selezionare quali regole eseguire.
Url string URL della pagina testata.

class Deque.AxeDevtools.Selenium.Results.TestEngine

Informazioni sul motore axe-core su cui è stato eseguito il test.

Campo Tipo Descrizione
Nome string Nome del motore.
Version string Numero di versione del motore.

class Deque.AxeDevtools.Selenium.Results.TestEnvironment

Informazioni sull'ambiente in cui è stato eseguito il test.

Campo Tipo Descrizione
OrientationAngle double? Angolo di orientamento dello schermo. (ad esempio 0)
OrientationType string Tipo di orientamento dello schermo. (ad esempio "landscape-primary")
UserAgent string User agent del browser in cui è stato eseguito il test.
WindowHeight int Altezza della finestra.
WindowWidth int Larghezza della finestra.

class Deque.AxeDevtools.Selenium.Results.TestResults

Risultati restituiti eseguendo axe sulla pagina.

Campo Tipo Descrizione
Inapplicabile List<Regola> Questi risultati sono stati interrotti e richiedono ulteriori test. Ciò può accadere a causa di restrizioni tecniche relative a ciò che la regola può testare oppure perché si è verificato un errore JavaScript.
Incompleto List<Regola> Questi risultati indicano quali regole non sono state eseguite perché non è stato trovato alcun contenuto corrispondente nella pagina. Ad esempio, senza video, quelle regole non verranno eseguite.
Superamenti List<Regola> Questi risultati indicano quali elementi hanno superato le regole.
TestEngine TestEngine Informazioni sul motore axe-core utilizzato nel test.
TestEnvironment TestEnvironment Informazioni sull'ambiente in cui è stato eseguito il test.
TestRunner TestRunner Nome dell'esecutore di test.
Timestamp string Data e ora in cui è stata completata l'analisi.
ToolOptions oggetto Opzioni applicate durante il test.
Url string URL della pagina testata.
Violazioni Elenco<Regola> Questi risultati indicano quali elementi non hanno soddisfatto le regole.

class Deque.AxeDevtools.Selenium.Results.TestRunner

Nome dell'esecutore del test.

Campo Tipo Descrizione
Nome stringa Il nome.

class Deque.AxeDevtools.Selenium.Results.TestSubject

Informazioni su ciò che viene testato.

Campo Tipo Descrizione
FileName string Nome file del sito sottoposto a test. (Può essere un URL.)
LineNum int Numero di riga del test.
Stato string Stato del file.

class Deque.AxeDevtools.Selenium.RunOptions.Context

Specificare quale elemento deve essere testato e quale no.

void Excluding(string[])

Aggiungere un set di selettori per gli elementi che non devono essere testati.

Param Descrizione
exclude Set di selettori CSS.

void Including(string[])

Aggiungere un set di selettori per gli elementi che devono essere testati.

Param Descrizione
include Set di selettori CSS.

enum Deque.AxeDevtools.Selenium.RunOptions.ResultGroup

  • Superati
  • Violazioni
  • Incompleto
  • Inapplicabile

class Deque.AxeDevtools.Selenium.RunOptions.RuleStatus

Abilita o disabilita una regola.

Campo Tipo Descrizione
Abilitato bool Se è abilitato o meno.

class Deque.AxeDevtools.Selenium.RunOptions.RunOnly

Limita le regole da eseguire in base ai nomi o ai tag.

Static RunOnlyRules(string[])

Costruisci un limitatore per le regole basate sugli ID.

Param Descrizione
rules Elenco degli ID delle regole da utilizzare.

Restituisce: L'oggetto RunOnly .

Static RunOnly Tag(TagType[])

Costruisci un limitatore per le regole basate sui tag.

Param Descrizione
tipologie Elenco dei tag da utilizzare.

Restituisce: L'oggetto RunOnly .

enum Deque.AxeDevtools.Selenium.RunOptions.RunOnlyType

  • Regola
  • Regole
  • Tag
  • Etichette

class Deque.AxeDevtools.Selenium.RunOptions.RunOptions

Una configurazione flessibile per il funzionamento di axe.

Campo Tipo Descrizione
ElementRef bool? Restituisce i riferimenti agli elementi in aggiunta al target.
IFrames bool? Indica ad axe di eseguire all'interno degli iframe.
ResultTypes ResultGroup[] Limita i tipi di risultati da elaborare e aggregare
Regole Dizionario<string, StatoRegola> Consente di personalizzare le proprietà di una regola (incluso { enable: false }).
RunOnly RunOnly Limita le regole da eseguire in base ai nomi o ai tag.
Selettori bool? Restituisce i selettori xpath per gli elementi.

enum Deque.AxeDevtools.Selenium.RunOptions.TagType

  • Wcag2a
  • Wcag2aa
  • Wcag2aaa
  • Wcag21a
  • Wcag21aa
  • Wcag21aaa
  • Wcag22a
  • Wcag22aa
  • Wcag22aaa
  • Section508
  • TTv5
  • EN301549
  • BestPractice

class Deque.AxeDevtools.Selenium.Spec.Check

Utilizzato per aggiungere controlli all'elenco dei controlli utilizzati dalle regole o per sovrascrivere le proprietà dei controlli esistenti.

Campo Tipo Descrizione
After string Questa è la funzione che viene chiamata per i controlli che operano a livello di pagina, per elaborare i risultati degli iframe.
Abilitato bool? Viene utilizzato per indicare se il controllo è attivato o disattivato per impostazione predefinita. I controlli disattivati non vengono valutati, anche se inclusi in una regola. Ignorare questa regola è un metodo comune per disattivare un controllo specifico su più regole.
Valuta string Questa è la funzione che implementa la funzionalità del controllo.
Id stringa Identifica in modo univoco la verifica. Se il controllo esiste già, tutte le proprietà di controllo fornite verranno sovrascritte.
Corrispondenze string Un selettore CSS di filtraggio che escluderà gli elementi che non corrispondono al selettore CSS.
Opzioni oggetto Questa è la struttura delle opzioni che viene passata alla funzione di valutazione e che è destinata a essere utilizzata per configurare i controlli. Si tratta della proprietà più comune che si intende sovrascrivere per i controlli esistenti.

class Deque.AxeDevtools.Selenium.Spec.Rule

Utilizzato per aggiungere regole al set di regole esistente o per sovrascrivere le proprietà delle regole esistenti.

Campo Tipo Descrizione
Tutto string[] Questo è un elenco di controlli che, se uno di essi "fallisce", genera una violazione.
Ogni string[] Questo è un elenco di controlli che, se nessuno "supera", genera una violazione.
Abilitato bool? Se la regola è attivata. Questo è un attributo comune per la sovrascrittura.
ExcludeHidden bool? Indica se gli elementi nascosti a tutti gli utenti devono essere passati alla regola per la valutazione.
Id string Identifica in modo univoco la regola. Se la regola esiste già, verrà sostituita con uno qualsiasi degli attributi forniti.
Corrispondenze stringa Un selettore CSS di filtraggio che escluderà gli elementi che non corrispondono al selettore CSS.
Nessuno string[] Questo è un elenco di controlli che, se uno qualsiasi di essi "supera", genereranno una violazione.
PageLevel bool? Se impostato su true, questa regola viene applicata solo quando viene testata l'intera pagina. I risultati dei nodi su frame diversi vengono combinati in un unico risultato.
Selettore string Un selettore CSS utilizzato per identificare gli elementi che vengono passati alla regola per la valutazione.
Tag string[] Elenco dei tag che "classificano" la regola. In pratica, è necessario fornire alcuni tag validi, altrimenti la valutazione predefinita non invocherà la regola. La convenzione prevede l'inclusione dello standard (WCAG 2, sezione 508, Trusted Tester v5 o EN 301 549), del livello WCAG 2, del paragrafo della sezione 508 e dei criteri di successo WCAG 2. I tag vengono creati convertendo tutte le lettere in minuscolo, rimuovendo spazi e punti e concatenando il risultato. Ad esempio, il criterio di successo WCAG 2 A 1.1.1 diventerebbe ["wcag2a", "wcag111"]

class Deque.AxeDevtools.Selenium.Spec.Spec

Configura il formato dei dati utilizzati da axe. Può essere utilizzato per aggiungere nuove regole, che devono essere registrate nella libreria per poter essere eseguite.

Campo Tipo Descrizione
Branding Branding Utilizzato per impostare il branding degli helpUrls.
Controlli Check[] Utilizzato per aggiungere controlli all'elenco dei controlli utilizzati dalle regole o per sovrascrivere le proprietà dei controlli esistenti.
Locale Locale Un oggetto locale da applicare (in fase di esecuzione) a tutte le regole e i controlli.
ReporterVersion ReporterVersion? Utilizzato per impostare il formato di output che verrà restituito dalla funzione axe.run.
Regole Regola[] Utilizzato per aggiungere regole al set di regole esistente o per sovrascrivere le proprietà delle regole esistenti.