Validar a acessibilidade de HTML com uma API .NET

Aspose.HTML for .NET fornece um AccessibilityValidator para verificar documentos HTML com regras de acessibilidade WCAG. Valide um arquivo local ou uma página web, identifique verificações com falha e elementos afetados e exporte os resultados como relatório.

A validação regular ajuda as equipes a encontrar problemas de acessibilidade antes da publicação e aplicar as mesmas verificações sempre que o conteúdo HTML for alterado.


Validar um documento HTML em C#

Crie um validador com todas as configurações de regras, valide o documento e percorra apenas os resultados com falha. Leia ruleResult.Results para informar todas as técnicas com falha, mesmo quando a coleção Errors correspondente estiver vazia.

Código C# para validar a acessibilidade de HTML

using System;
using System.IO;
using Aspose.Html;
using Aspose.Html.Accessibility;
using Aspose.Html.Accessibility.Results;

string documentPath = Path.Combine("data", "input.html");

WebAccessibility webAccessibility = new WebAccessibility();
AccessibilityValidator validator = webAccessibility.CreateValidator(
    ValidationBuilder.All);

// Validate the HTML document against the configured rules
using HTMLDocument document = new HTMLDocument(documentPath);
ValidationResult validationResult = validator.Validate(document);

foreach (RuleValidationResult ruleResult in validationResult.Details)
{
    if (ruleResult.Success)
    {
        continue;
    }

    Console.WriteLine($"{ruleResult.Rule.Code}: {ruleResult.Rule.Description}");

    // Inspect every technique result, including entries without an error object
    foreach (ITechniqueResult techniqueResult in ruleResult.Results)
    {
        if (techniqueResult.Success)
        {
            continue;
        }

        Console.WriteLine(
            $"  {techniqueResult.Rule.Code}: {techniqueResult.Rule.Description}");

        IError error = techniqueResult.Error;
        if (error == null)
        {
            continue;
        }

        Console.WriteLine($"    {error.ErrorTypeName}: {error.ErrorMessage}");

        if (error.Target?.TargetType == TargetTypes.HTMLElement &&
            error.Target.Item is HTMLElement element)
        {
            Console.WriteLine($"    {element.OuterHTML}");
        }
    }
}

Como validar a acessibilidade de HTML

  1. Crie um objeto WebAccessibility para acessar a criação do validador e o repositório de regras de acessibilidade.
  2. Chame CreateValidator(ValidationBuilder.All) para criar um validador para todas as regras compatíveis com as configurações completas do builder.
  3. Carregue um arquivo ou URL em um HTMLDocument .
  4. Chame Validate() e armazene o ValidationResult retornado.
  5. Percorra Details, selecione os objetos RuleValidationResult com falha e analise as técnicas com falha em Results. Exiba os detalhes do erro e o elemento HTML afetado quando essas informações estiverem disponíveis.

Configurar e processar verificações de acessibilidade

  • Validação completa. ValidationBuilder.All aplica às regras do repositório todas as configurações de nível e tecnologia disponíveis.
  • Validação filtrada. O validador pode ser limitado por nível, tecnologia, tag HTML, princípio, diretriz, critério ou lista de regras.
  • Diagnóstico detalhado. ValidationResult.Details fornece resultados das regras, enquanto os erros das técnicas apresentam mensagens e destinos afetados.
  • HTML local e remoto. HTMLDocument pode carregar um arquivo HTML ou a URL de uma página web antes da validação.
  • Resultados exportáveis. Os relatórios podem ser processados em código ou salvos como texto, JSON ou XML para revisões e fluxos automatizados.
  • Verificação manual. Os resultados automáticos devem ser combinados com testes de teclado, tecnologias assistivas, conteúdo e usabilidade.

Para uma verificação ocasional sem código, use o Web Accessibility Checker online . Use a API .NET quando a validação precisar ser configurada, repetida ou integrada a um pipeline de desenvolvimento.


Documentação do validador de acessibilidade

O guia Accessibility Validator explica as sobrecargas disponíveis de CreateValidator() e os filtros de ValidationBuilder. Consulte Errors and Warnings para processar técnicas com falha e elementos de destino ou Save Validation Results para exportar relatórios como texto, JSON ou XML.


Instalar o Aspose.HTML for .NET

Instale o Aspose.HTML for .NET pelo NuGet usando a CLI do .NET:

dotnet add package Aspose.HTML

Você também pode usar a interface do Gerenciador de Pacotes NuGet ou executar Install-Package Aspose.HTML no Console do Gerenciador de Pacotes. Consulte o guia de instalação para configurar a biblioteca ou solicite uma licença temporária para avaliar a API sem limitações.


Perguntas frequentes sobre o validador de acessibilidade HTML

1. Como validar a acessibilidade de HTML em C#?

Carregue o arquivo HTML ou URL com HTMLDocument, crie um AccessibilityValidator por meio de WebAccessibility e chame Validate(). O ValidationResult retornado contém o status e os resultados detalhados das regras avaliadas.

2. Um validador automático pode garantir conformidade com as WCAG?

Não. A validação automática identifica falhas testáveis por máquina, mas muitos requisitos dependem do contexto e do julgamento humano. Ainda são necessários testes manuais com teclado e tecnologias assistivas e a revisão do significado do conteúdo.

3. O validador pode verificar arquivos HTML locais e páginas web?

Sim. HTMLDocument pode carregar um arquivo local ou uma URL. A validação remota depende do acesso à rede e da capacidade do documento de obter folhas de estilo, scripts e outros recursos necessários.

4. Posso validar apenas regras ou níveis WCAG selecionados?

Sim. Use ValidationBuilder para filtrar por nível ou tecnologia, ou crie o validador com um princípio, diretriz, critério ou lista explícita de regras. Isso é útil quando o pipeline precisa de uma política específica em vez do repositório completo.

5. Os resultados da validação de acessibilidade podem ser salvos?

Sim. Use SaveToString() para uma representação em texto ou SaveTo() com ValidationResultSaveFormat para gravar texto, JSON ou XML. A saída estruturada pode ser arquivada ou usada em relatórios e fluxos de controle de qualidade.

Fluxos relacionados de acessibilidade web

Continue com regras WCAG selecionadas, verificação do atributo alt, validação de contraste ou a visão geral da API.