Referencia de API de 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

Clases C# de Axe DevTools

Esta página documenta las clases que componen axe DevTools C#

class Deque.AxeDevtools.Selenium.AxeSelenium

La interfaz para axe. Contiene configuraciones para cambiar el funcionamiento de axe, así como la capacidad de ejecutarlo.

Campo estático Tipo Descripción
defaultAxeSource string La cadena default axe-core que se utilizará.

AxeSelenium(OpenQA.Selenium.Remote.RemoteWebDriver, Configuración del informe?, cadena)

Crea un nuevo objeto AxeSelenium para una página con una configuración específica.

Parámetro Descripción
controlador web Objeto Selenium de la página a probar. Debe estar listo para la prueba.
reportConfiguration Configuración para diversa información específica para el informe. El valor predeterminado es ReportConfiguration.GetDefault()
axeSource código fuente de axe-core a utilizar. El valor predeterminado es AxeSelenium.defaultAxeSource

Resultados del informeAnalizar()

Ejecutar axe en la página.

Devuelve: El informe de la ejecución de axe-core en la página.

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

AxeSelenium Configurar(Spec)

Configurar axe. Hecho a través de axe.configure

Parámetro Descripción
spec Objeto de especificación a pasar.

Devuelve: Este objeto para encadenar.

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()

AxeSeleniumDeshabilitarReglas(string[])

Deshabilitar algunas reglas al ejecutar Axe.

Parámetro Descripción
reglas Lista de identificadores de reglas.

Devuelve: Este objeto para encadenar.

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

AxeSeleniumExcluir(string[])

Especifique la parte de la página que desea excluir al ejecutar axe.

Parámetro Descripción
selector Lista de selectores CSS para elementos.

Devuelve: Este objeto para encadenar.

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

AxeSeleniumIncluir(string[])

Especifique la parte de la página donde se ejecutará axe.

Parámetro Descripción
selector Lista de selectores CSS para elementos.

Devuelve: Este objeto para encadenar.

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

AxeSelenium Opciones de ejecución(Opciones de ejecución)

Especifique RunOptions para pasar a axe al llamar a axe.run.

Parámetro Descripción
opciones Objeto a pasar

Devuelve: Este objeto para encadenar.

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

AxeSeleniumWithConfigFile(string)

Establece dónde encontrar un archivo de configuración. La ruta predeterminada es config/axe-ruleset.json o $AXE_RULESET_PATH.

Parámetro Descripción
path Ruta al archivo de configuración.

Devuelve: Este objeto para encadenar.

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

AxeSeleniumWithRules(string[])

Especifique las reglas (por id) que se utilizarán al ejecutar axe.

Parámetro Descripción
reglas Lista de identificadores de reglas.

Devuelve: Este objeto para encadenar.

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

AxeSeleniumWithRuleset(string, bool)

Utilice un conjunto de reglas específico (es decir, wcag2.1, 508).

Parámetro Descripción
rulesetId Id del conjunto de reglas a utilizar.
enableBestPractices Si activar o no las reglas etiquetadas best-practice. El valor predeterminado es false

Devuelve: Este objeto para encadenar.

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

AxeSelenium WithTags(TagType[])

Especifique las reglas (por etiqueta) que se utilizarán al ejecutar axe.

Parámetro Descripción
tags Lista de etiquetas de reglas.

Devuelve: Este objeto para encadenar.

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

Variables de entorno

Este método permite a los usuarios cambiar valores específicos del servicio de utilización a través de variables de entorno.

Variable ambiental Tipo
AXE_IS_LOGGED_IN Booleano
AXE_KEYCLOAK_ID Cadena
AXE_USER_ID Cadena
AXE_SESSION_ID Cadena
AXE_USER_STATUS Cadena
AXE_USER_JOB_ROLE Cadena
AXE_DISTINCT_ID Cadena
AXE_IS_DEV_INSTANCE Booleano
AXE_ORGANIZACIÓN Cadena
APLICACIÓN AXE Cadena
AXE_METRICS_URL Cadena
AXE_TRACK_USAGE Booleano

AxeSeleniumHabilitar seguimiento(bool)

Elija si desea o no enviar datos al servicio de uso.

Parámetro Descripción
estado Si el seguimiento está habilitado

Devuelve: Este objeto para encadenar.

AxeSeleniumSetTrackingUrl(cadena)

Establezca dónde se envían los datos de las métricas de uso. El valor predeterminado es https://usage.deque.com

Parámetro Descripción
url URL donde será enviado

Devuelve: Este objeto para encadenar.

AxeSeleniumSetDistinctId(cadena)

Establezca una identificación distinta que se utilizará al enviar métricas de uso.

Parámetro Descripción
id UUID para enviar como id distinto

Devuelve: Este objeto para encadenar.

class Deque.AxeDevtools.Selenium.ReportConfiguration

Configura información específica del informe, como el nombre del conjunto de pruebas o la información del agente de usuario.

Campo estático Campo Descripción
TIMESTAMP_FORMAT cadena Formato de marcas de tiempo en los informes.

estática ReportConfigurationGetDefault()

Obtiene la configuración predeterminada actual. Tenga en cuenta que la configuración predeterminada se puede cambiar.

Devuelve: el valor predeterminado actual.

static void ResetDefault()

Restablece el valor predeterminado a su estado inicial.

void SetAsDefault()

Establece este objeto como predeterminado.

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

ReportConfigurationTestMachine(string)

Establece la máquina en la que se ejecutaron estas pruebas.

Parámetro Descripción
testMachine Id de la máquina.

Devuelve: Este objeto para encadenar.

Configuración del informeTestSuiteName(cadena)

Establece el nombre del conjunto de pruebas.

Parámetro Descripción
nombre Nombre.

Devuelve: Este objeto para encadenar.

ReportConfigurationUIState(cadena)

Especifique el ui-state para este conjunto de pruebas. Utilizado como identificación.

Parámetro Descripción
id Identificación del estado.

Devuelve: Este objeto para encadenar.

ReportConfigurationUserAgent(cadena)

Establezca el agente de usuario utilizado durante la prueba.

Parámetro Descripción
userAgent Cadena de agente de usuario.

Devuelve: Este objeto para encadenar.

class Deque.AxeDevtools.Selenium.Results.Check

El resultado de ejecutar una comprobación de axe.

Campo Tipo Descripción
Datos objeto Información adicional específica del tipo de Check, que es opcional. Por ejemplo, una verificación de contraste de color incluiría el color de primer plano, el color de fondo, la relación de contraste, etc.
Id string Identificador único para esta comprobación. Los identificadores de verificación pueden ser los mismos que los identificadores de regla.
Impacto string Qué tan seria es esta verificación en particular. Puede ser "menor", "moderado", "grave" o "crítico". Cada verificación que forma parte de una regla puede tener diferentes impactos. Para la regla, se informa el mayor impacto de todas las comprobaciones que fallan.
Mensaje cadena de texto Descripción de por qué esta verificación se aprobó o falló.
RelatedNodes List<Node> Matriz opcional de información sobre otros nodos relacionados con esta comprobación. Por ejemplo, una violación de prueba de identificación duplicada enumeraría los otros selectores que tenían la misma identificación duplicada.

class Deque.AxeDevtools.Selenium.Results.CheckedNode

Un nodo HTML que fue comprobado por una regla.

Campo Tipo Descripción
All Lista<Verificación> Lista de verificaciones que se realizaron, donde todas deben haber pasado.
Cualquiera Lista<Verificación> Lista de verificaciones que se realizaron, donde al menos una debe haber pasado.
Impacto cadena Qué tan grave es la infracción. Puede ser "menor", "moderado", "grave" o "crítico" si la prueba falló, o nulo si la prueba pasó.
Ninguno Lista<Verificación> Lista de verificaciones que se realizaron, donde ninguna debe haber pasado.

class Deque.AxeDevtools.Selenium.Results.Node

Especifica un nodo HTML específico.

Campo Tipo Descripción
Html string Fragmento de HTML del elemento.
Target Objeto Matriz de cadenas o matrices de cadenas. Si el elemento de la matriz es una cadena, entonces es un selector CSS. Si hay varios elementos en la matriz, cada elemento corresponde a un nivel de iframe o marco. Si hay un iframe o marco, debe haber dos entradas en el objetivo. Si hay tres niveles de iframe, debería haber cuatro entradas en el objetivo. Si el elemento de la matriz es una matriz de cadenas, entonces apunta a un elemento en un shadow DOM y cada elemento (excepto el n-1) de esta matriz es un selector de un elemento DOM con un shadow DOM. El último elemento en el array apunta al nodo DOM de sombra final.

class Deque.AxeDevtools.Selenium.Results.Platform

La plataforma en la que se ejecutó una prueba.

Campo Tipo Descripción
TestMachine string Id de la máquina en la que se ejecutó la prueba.
UserAgent string User agent en el que se ejecutó la prueba.

class Deque.AxeDevtools.Selenium.Results.ReportResults

Resultados de una prueba que sean compatibles con el formato del generador de informes.

var axe = new AxeSelenium(driver, ReportConfiguration.GetDefault().UIState("UIState"));
var res = axe.Analyze();
File.WriteAllText(reportPath, JsonConvert.SerializeObject(res));
Campo Tipo Descripción
EndTime string Cuando la prueba se completó.
Hallazgos Resultados de la prueba Resultados de Axe.
Id string Id para la ejecución de la prueba.
Nombre cadena Nombre de la ejecución de la prueba.
Plataforma Plataforma Información sobre la plataforma en la que se ejecutó la prueba.
TestSubject TestSubject Información sobre dónde se ejecutó la prueba (por ejemplo, la URL de la página web).
Tipo string Tipo de informe. Es siempre "attest-result".

class Deque.AxeDevtools.Selenium.Results.Rule

Resultado para una sola regla.

Campo Tipo Descripción
CreatedDate string La fecha y hora en que se completó el análisis.
Descripción string Cadena de texto que describe lo que hace la regla.
Ayuda string Texto de ayuda que describe la prueba que se realizó.
HelpUrl string URL que proporciona más información sobre los detalles de la infracción. Enlaces a una página en el sitio de la Universidad Deque.
Id string Identificador único de la regla.
Impacto cadena Qué tan grave es la infracción. Puede ser "menor", "moderado", "grave" o "crítico" si la regla falló, o nulo si la verificación pasó.
Nodos Lista<CheckedNode> Arreglo de todos los elementos que la regla probó.
Tags List<string> Arreglo de etiquetas a las que está asignada esta regla. Estas etiquetas se pueden utilizar en la estructura de opciones para seleccionar qué reglas se ejecutan.
Url string La URL de la página que se probó.

class Deque.AxeDevtools.Selenium.Results.TestEngine

Información sobre el motor Axe-Core en el que se ejecutó la prueba.

Campo Tipo Descripción
Nombre string Nombre del motor.
Versión string Número de versión del motor.

class Deque.AxeDevtools.Selenium.Results.TestEnvironment

Información sobre el entorno en el que se realizó la prueba.

Campo Tipo Descripción
OrientationAngle double? Ángulo de orientación de la pantalla. (p. ej. 0)
OrientationType string Tipo de orientación de la pantalla.
UserAgent string Agente de usuario del navegador en el que se ejecutó la prueba.
WindowHeight int Altura de la ventana.
WindowWidth int Ancho de la ventana.

class Deque.AxeDevtools.Selenium.Results.TestResults

Resultados devueltos al ejecutar axe en la página.

Campo Tipo Descripción
Inaplicable Lista<Regla> Estos resultados fueron abortados y requieren más pruebas. Esto puede suceder debido a restricciones técnicas sobre lo que la regla puede probar o porque se produjo un error de JavaScript.
Incompleto Lista<Regla> Estos resultados indican qué reglas no se ejecutaron porque no se encontró contenido coincidente en la página. Por ejemplo, sin vídeo, esas reglas no se ejecutarán.
Aprobados Lista<Regla> Estos resultados indican qué elementos pasaron las reglas.
TestEngine TestEngine Información sobre el motor axe-core utilizado en la prueba.
TestEnvironment TestEnvironment Información sobre el entorno en el que se realizó la prueba.
TestRunner TestRunner Nombre del runner de pruebas.
Timestamp string La fecha y hora en que se completó el análisis.
ToolOptions objeto Opciones aplicadas durante el testeo.
Url string La URL de la página que se probó.
Violaciones Lista<Regla> Estos resultados indican qué elementos no cumplieron las reglas.

class Deque.AxeDevtools.Selenium.Results.TestRunner

Nombre del ejecutor de pruebas.

Campo Tipo Descripción
Nombre cadena de texto El nombre.

class Deque.AxeDevtools.Selenium.Results.TestSubject

Información sobre lo que se está probando.

Campo Tipo Descripción
FileName string Nombre de archivo del sitio bajo prueba. (Puede ser una URL.)
LineNum int Número de línea del test.
Estado string Estado del archivo.

class Deque.AxeDevtools.Selenium.RunOptions.Context

Especifique qué elemento se debe probar y cuál no.

void Excluding(string[])

Agregue un conjunto de selectores para los elementos que no se deben probar.

Parámetro Descripción
exclude Conjunto de selectores CSS.

void Including(string[])

Agregue un conjunto de selectores para los elementos que deben probarse.

Parámetro Descripción
include Conjunto de selectores CSS.

enum Deque.AxeDevtools.Selenium.RunOptions.ResultGroup

  • Pruebas superadas
  • Violaciones
  • Incompleto
  • Inaplicable

class Deque.AxeDevtools.Selenium.RunOptions.RuleStatus

Habilita o deshabilita una regla.

Campo Tipo Descripción
Habilitado bool Si está habilitado o no.

class Deque.AxeDevtools.Selenium.RunOptions.RunOnly

Limitar qué reglas se ejecutan, según nombres o etiquetas.

Estática EjecutarSoloReglas(cadena[])

Construir un limitador para reglas basadas en identificadores.

Parámetro Descripción
rules Lista de identificadores de reglas a utilizar.

Devuelve: RunOnly El objeto.

estático Solo ejecución Etiquetas(TipoDeEtiqueta[])

Construya un limitador para reglas basadas en etiquetas.

Parámetro Descripción
tipos Lista de tipos a utilizar.

Devuelve: RunOnly El objeto.

enum Deque.AxeDevtools.Selenium.RunOptions.RunOnlyType

  • Regla
  • Reglas
  • Etiqueta
  • Etiquetas

class Deque.AxeDevtools.Selenium.RunOptions.RunOptions

Una configuración flexible del funcionamiento de axe.

Campo Tipo Descripción
ElementRef bool? Devuelve referencias de elementos además del objetivo.
IFrames bool? Dígale a ax que se ejecute dentro de iframes.
ResultTypes ResultGroup[] Limita qué tipos de resultados se procesan y agregan
Reglas Diccionario<string, RuleStatus> Permitir personalizar las propiedades de una regla (incluyendo { enable: false }).
RunOnly RunOnly Limita las reglas que se ejecutan, en función de los nombres o las etiquetas.
Selectores bool? Devuelve selectores xpath para elementos.

enum Deque.AxeDevtools.Selenium.RunOptions.TagType

  • Wcag2a
  • Wcag2aa
  • Wcag2aaa
  • Wcag21a
  • Wcag21aa
  • Wcag21aaa
  • Wcag22a
  • Wcag22aa
  • Wcag22aaa
  • Section508
  • TTv5
  • EN301549
  • Mejores prácticas

class Deque.AxeDevtools.Selenium.Spec.Check

Se utiliza para agregar comprobaciones a la lista de comprobaciones utilizadas por las reglas o para anular las propiedades de las comprobaciones existentes.

Campo Tipo Descripción
Posterior cadena Esta es la función que se llama para las comprobaciones que operan a nivel de página, para procesar los resultados de los iframes.
Habilitado bool? Esto se utiliza para indicar si la comprobación está activada o desactivada de forma predeterminada. No se evalúan las comprobaciones desactivadas, incluso cuando se incluyen en una regla. Sobrescribir esto es una forma común de deshabilitar una verificación particular en múltiples reglas.
Evaluación cadena Esta es la función que implementa la funcionalidad de la verificación.
Id string Esto identifica de forma única la verificación. Si la verificación ya existe, se anularán todas las propiedades de verificación suministradas.
Correspondencias cadena de texto Un selector CSS de filtrado que excluirá los elementos que no coincidan con el selector CSS.
Opciones objeto Esta es la estructura de opciones que se pasa a la función de evaluación y está destinada a ser utilizada para configurar verificaciones. Es la propiedad más común que se pretende anular en los controles existentes.

class Deque.AxeDevtools.Selenium.Spec.Rule

Se utiliza para agregar normas al conjunto de normas existente o para anular las propiedades de las normas existentes.

Campo Tipo Descripción
All string[] Esta es una lista de comprobaciones que, si alguna "falla", generarán una infracción.
Cualquier cadena[] Esta es una lista de comprobaciones que, si ninguna "pasa", generarán una infracción.
Habilitado bool? Si la regla está activada. Este es un atributo común para sobrescribir.
ExcludeHidden bool? Esto indica si los elementos que están ocultos para todos los usuarios deben pasarse a la regla para su evaluación.
Id string Esto identifica de forma única la regla. Si la regla ya existe, será sobrescrita con los atributos proporcionados.
Coincidencias cadena Un selector CSS de filtrado que excluirá los elementos que no coincidan con el selector CSS.
None string[] Esta es una lista de comprobaciones que, si alguna "se aprueba", generarán una violación.
PageLevel bool? Cuando se establece en verdadero, esta regla solo se aplica cuando se prueba toda la página. Los resultados de los nodos en diferentes marcos se combinan en un único resultado.
Selector string Un selector CSS utilizado para identificar los elementos que se pasan a la regla para su evaluación.
Tags string[] Una lista de las etiquetas que "clasifican" la regla. En la práctica, debe proporcionar algunas etiquetas válidas o la evaluación predeterminada no invocará la regla. La convención es incluir el estándar (WCAG 2, sección 508, Trusted Tester v5 o EN 301 549), el nivel WCAG 2, el párrafo de la Sección 508 y los criterios de éxito WCAG 2. Las etiquetas se construyen convirtiendo todas las letras a minúsculas, eliminando espacios y puntos y concatenando el resultado. Por ejemplo, el criterio de éxito 1.1.1 de WCAG 2 se convertiría en ["wcag2a", "wcag111"]

clase Deque.AxeDevtools.Selenium.Spec.Spec

Configura el formato de los datos utilizados por axe. Esto se puede usar para agregar nuevas reglas, que deben registrarse en la biblioteca para ejecutarse.

Campo Tipo Descripción
Branding Branding Se utiliza para establecer la marca de las URLs de ayuda.
Comprobaciones Comprobaciones[] Se utiliza para agregar comprobaciones a la lista de comprobaciones utilizadas por las reglas o para anular las propiedades de las comprobaciones existentes.
Configuración regional Configuración regional Un objeto de configuración regional para aplicar (en tiempo de ejecución) a todas las reglas y comprobaciones.
ReporterVersion ReporterVersion? Se utiliza para establecer el formato de salida que devolverá la función axe.run.
Reglas Regla[] Se utiliza para agregar reglas al conjunto de reglas existente o para anular las propiedades de las reglas existentes.