Após executar uma verificação, você será levado para a aba „Visão Geral“ com os resultados da verificação. Lá, você encontrará um botão „Exportar“. Ao clicar, um diálogo aparecerá permitindo que você configure qual tipo de exportação deseja, junto com o formato de exportação.
Você sabia que pode compartilhar um registro inteiro de teste salvo e todos os seus problemas? Leia mais sobre compartilhamento de registros de teste salvos
Tipos de Exportação
Exportação de Problemas
A exportação de problemas é suportada nos formatos CSV, JSON e JUnit XML. Esta exportação conterá informações pertinentes a cada violação de acessibilidade encontrada tanto nos testes automáticos quanto nos Testes Guiados Inteligentes.
Esquemas CSV Suportados
axe DevTools Pro CSV (padrão)
| nome da coluna | descrição |
|---|---|
| ID da Regra | O identificador para a regra de acessibilidade |
| Descrição | Uma descrição da regra de acessibilidade |
| Ajuda | Informações úteis sobre a regra violada que levou ao problema |
| URL de Ajuda | Um URL com ajuda para a regra dada |
| Impacto | O impacto ou a gravidade do problema |
| Manual | Se o problema foi encontrado manualmente (IGT) ou não |
| Precisa de Revisão | Se o problema potencial precisa de revisão manual |
| IGT | Qual IGT específico foi executado para encontrar o problema (vazio se não encontrado por IGT) |
| Seletor | O seletor CSS para o elemento problemático |
| Resumo | Resumo do problema |
| Código Fonte | O trecho de código fonte HTML do elemento problemático |
| Tags | Metadados para o problema (categorias, identificadores de pontos de controle WCAG, etc.) |
| Encontrado Por | Usuário que realizou o teste no qual o problema foi levantado |
| Título do Teste | O nome do teste salvo |
| URL do Teste | A URL da página testada |
| URL de Compartilhamento | A URL do problema compartilhado (preenchido somente quando problema ou teste salvo explicitamente compartilhados) |
| Criado Em | Quando o problema foi criado pela primeira vez |
axe Reporter CSV
Este esquema é compatível com o CSV „axe Reporter“ gerado a partir de integrações da API axe DevTools. Este esquema é especialmente útil se você estiver agregando dados tanto da extensão do navegador axe DevTools quanto de APIs/CLI.
| nome da coluna | descrição |
|---|---|
| URL da Página | A url da página testada |
| Título da Página | O título do documento da página testada |
| Resultado | O resultado do problema (ficará em branco para a extensão do axe DevTools) |
| Impacto | O impacto ou severidade do problema |
| Trecho de Código | O trecho de código fonte HTML do elemento com problema |
| Seletor | O seletor CSS para o elemento com problema |
| Correção | Informação de correção do problema |
| Manual | Se o problema foi encontrado manualmente (IGT) ou não |
| ID da Regra | O identificador para a regra de acessibilidade associada ao problema |
| Ajuda | Informações úteis sobre a regra violada que levou ao problema |
| Descrição | Uma descrição da regra de acessibilidade |
| URL de Ajuda | Uma URL com ajuda para a regra dada |
| Padrão | Qual padrão/ponto de verificação WCAG o problema se encaixa |
| Critérios de Sucesso WCAG 2 | Os critérios de sucesso WCAG para o problema |
| Parágrafo da Seção 508 | Informações aplicáveis da Seção 508 para o problema |
| Tags | Metadados do problema (categorias, identificadores de ponto de verificação WCAG, etc.) |
| Data | Data em que o problema foi encontrado |
| axe-core | Versão do axe-core usada no teste que levantou o problema |
| Precisa de Revisão | Se o potencial problema precisa ou não de revisão manual |
| IGT | Qual IGT específico foi executado para encontrar o problema (em branco se não foi encontrado pelo IGT) |
| Encontrado Por | Usuário que realizou o teste no qual o problema foi levantado |
| Título do Teste | O nome do título do teste |
| URL de Compartilhamento | O URL do problema compartilhado (preenchido apenas quando o problema ou teste salvo for explicitamente compartilhado) |
Esquema JSON Suportado
A exportação do problema JSON é um array de dados de problema com as seguintes propriedades para cada problema:
| Nome da propriedade | Tipo | Descrição |
|---|---|---|
axeVersion |
string | A versão do axe-core usada para o teste em que o problema foi identificado. |
createdAt |
string | A data/hora em que o problema foi identificado. |
description |
string | Uma descrição do problema. |
foundBy |
string | Usuário que realizou o teste em que o problema foi identificado. |
help |
string | Informações úteis sobre a regra violada que levou ao problema. |
helpUrl |
string | Uma URL com ajuda para a regra específica. |
igt |
string | O nome do IGT no qual o problema foi identificado (null se não encontrado no IGT). |
impact |
string | O impacto ou severidade do problema. |
isManual |
boolean | Se o problema foi encontrado manualmente (IGT) ou não. |
needsReview |
boolean | Se o problema potencial precisa de revisão manual. |
ruleId |
string | O identificador para a regra de acessibilidade associada ao problema. |
selector |
array | Uma matriz de Seletores CSS para direcionar o nó associado à violação. Leia documentação do axe-core sobre seletores. |
shareURL |
string | A URL compartilhada do problema (somente preenchida quando o problema ou teste salvo é explicitamente compartilhado). |
source |
string | O fragmento do código fonte HTML do elemento problemático. |
summary |
string | Resumo do problema. |
tags |
array | Matriz de marcas de string de metadados do problema (categorias, identificadores de pontos de verificação WCAG, etc.). |
testName |
string | O nome do teste salvo no qual o problema foi encontrado. |
testPageTitle |
string | O título do documento no qual o problema foi encontrado. |
testUrl |
string | A URL da página testada. |
Esquema XML do JUnit
Todos os dados do problema estão encapsulados em um elemento <testsuites />. Este elemento conterá os seguintes atributos:
| Atributo | Descrição | Exemplo |
|---|---|---|
id |
O nível WCAG selecionado no momento da exportação. | "wcag21AA" |
name |
O nome do teste salvo ou, para exportações feitas antes de salvar os resultados, o título do documento sendo testado | "Recipe Dashboard" |
package |
O nome do software em que o teste foi realizado. | "axe DevTools Browser Extension" |
timestamp |
A data/hora da exportação. | "2023-04-04T00:08:10.772Z" (resultado de new Date().toISOString()) |
Dentro do <testsuites /> há <testcase /> elementos. Cada <testcase /> representa uma falha de "regra". Este elemento conterá os seguintes atributos:
| Atributo | Descrição | Exemplo |
|---|---|---|
name |
O ID da regra. | "aria-role-missing" |
id |
Em qual IGT o problema foi encontrado (será omitido para problemas automáticos). | "igt:keyboard" |
Dentro de cada elemento <testcase /> há um elemento <failure />. Este elemento representa uma falha da regra definida no <testcase />. O <failure /> contém os seguintes atributos:
| Atributo | Descrição | Exemplo |
|---|---|---|
message |
A descrição do problema (falha) seguida pela URL de ajuda da regra | "The element's role is missing or is not appropriate for the element's function. https://docs.deque.com/issue-help/1.0.0/en/aria-role-missing" |
impact |
O impacto do problema. | "critical" |
Dentro de cada elemento <failure />, cada instância do seletor da falha ("Caminho CSS") e do código-fonte ("HTML") será impressa. Cada instância será separada por --------. Um exemplo deste texto é o seguinte:
CSS Path: body.Page--no-sidebar > #btn-1
HTML: <div id="btn-1" tabindex="0"><img src="https://workshop2.dequelabs.com/46c642c98aecd147b905d063efb8a97d.png" class="edit" alt="Edit"></div>
--------
CSS Path: body.Page--no-sidebar > #btn-2
HTML: <div id="btn-2" tabindex="0"><img src="https://workshop2.dequelabs.com/46c642c98aecd147b905d063efb8a97d.png" class="edit" alt="Edit"></div>Exemplo de arquivo XML JUnit
O seguinte é um exemplo de exportação XML JUnit. Neste exemplo, temos:
- Nível AA WCAG 2.1 selecionado
- Nome do teste salvo como „Recipe Dashboard“
- 2 problemas de
semantic-data-table-headerslevantados no Tabela IGT - 3 problemas de
keyboard-inaccessiblelevantados no Teclado IGT - 2 problemas de
aria-role-missinglevantados no Teclado IGT
<?xml version="1.0" encoding="utf-8"?>
<testsuites
id="wcag21aa"
name="Recipe Dashboard"
package="axe DevTools Browser Extension"
timestamp="2023-04-04T00:08:10.772Z"
>
<properties>
<property name="platform.userAgent" value="" />
<property name="platform.testMachine" value="" />
<property name="testSubject.fileName" value="" />
<property name="testSubject.lineNum" value="-1" />
</properties>
<testcase
name="semantic-data-table-headers"
id="igt:table"
>
<failure
message="The data table has missing or incomplete header cell markup. https://docs.deque.com/issue-help/1.0.0/en/semantic-data-table-headers"
impact="critical"
>
CSS Path: body.Page--no-sidebar > div#root:nth-of-type(1) > div.App:nth-of-type(1) > div.Layout:nth-of-type(1) > main#main-content.Main:nth-of-type(1) > div.RecipesTable:nth-of-type(3) > table.Table:nth-of-type(1) > thead.TableHead:nth-of-type(1) > tr.TableRow:nth-of-type(1) > td.TableCell.THead:nth-of-type(4)
HTML: <td class="TableCell THead">Cook Time</td>
--------
CSS Path: body.Page--no-sidebar > div#root:nth-of-type(1) > div.App:nth-of-type(1) > div.Layout:nth-of-type(1) > main#main-content.Main:nth-of-type(1) > div.RecipesTable:nth-of-type(3) > table.Table:nth-of-type(1) > thead.TableHead:nth-of-type(1) > tr.TableRow:nth-of-type(1) > td.TableCell.THead:nth-of-type(7)
HTML: <td class="TableCell THead">Yumminess</td>
</failure>
</testcase>
<testcase
name="keyboard-inaccessible"
id="igt:keyboard"
>
<failure
message="There is no way to perform the function using only the keyboard on the same screen or on a qualifying conforming alternate version. https://docs.deque.com/issue-help/1.0.0/en/keyboard-inaccessible"
impact="critical"
>
CSS Path: body.Page--no-sidebar > div#root:nth-of-type(1) > div.App:nth-of-type(1) > div.Layout:nth-of-type(1) > main#main-content.Main:nth-of-type(1) > div.Recipes:nth-of-type(2) > div.Recipes__card:nth-of-type(16) > div.Recipes__card-foot:nth-of-type(3) > div.Button--primary:nth-of-type(1)
HTML: <div class="Button--primary"><span class="BracketLeft" aria-hidden="true">[</span><span>Cook Lemon Squares</span><span class="BracketRight" aria-hidden="true">]</span></div>
--------
CSS Path: body.Page--no-sidebar > div#root:nth-of-type(1) > div.App:nth-of-type(1) > div.Layout:nth-of-type(1) > main#main-content.Main:nth-of-type(1) > div.Recipes:nth-of-type(2) > div.Recipes__card:nth-of-type(1) > div.Recipes__card-foot:nth-of-type(3) > div.Button--primary:nth-of-type(1)
HTML: <div class="Button--primary"><span class="BracketLeft" aria-hidden="true">[</span><span>Cook Chocolate Cake</span><span class="BracketRight" aria-hidden="true">]</span></div>
--------
CSS Path: body.Page--no-sidebar > div#root:nth-of-type(1) > div.App:nth-of-type(1) > div.Layout:nth-of-type(1) > main#main-content.Main:nth-of-type(1) > div.Recipes:nth-of-type(2) > div.Recipes__card:nth-of-type(19) > div.Recipes__card-foot:nth-of-type(3) > div.Button--primary:nth-of-type(1)
HTML: <div class="Button--primary"><span class="BracketLeft" aria-hidden="true">[</span><span>Cook Kale Salad</span><span class="BracketRight" aria-hidden="true">]</span></div>
</failure>
</testcase>
<testcase
name="aria-role-missing"
id="igt:keyboard"
>
<failure
message="The element's role is missing or is not appropriate for the element's function. https://docs.deque.com/issue-help/1.0.0/en/aria-role-missing"
impact="critical"
>
CSS Path: body.Page--no-sidebar > div#root:nth-of-type(1) > div.App:nth-of-type(1) > div.Layout:nth-of-type(1) > main#main-content.Main:nth-of-type(1) > div.Recipes:nth-of-type(2) > div.Recipes__card:nth-of-type(16) > div.Recipes__card-head:nth-of-type(1) > div.Recipes__card-edit:nth-of-type(1)
HTML: <div class="Recipes__card-edit" tabindex="0"><img src="https://workshop2.dequelabs.com/46c642c98aecd147b905d063efb8a97d.png" class="edit" alt="Edit"></div>
--------
CSS Path: body.Page--no-sidebar > div#root:nth-of-type(1) > div.App:nth-of-type(1) > div.Layout:nth-of-type(1) > main#main-content.Main:nth-of-type(1) > div.Recipes:nth-of-type(2) > div.Recipes__card:nth-of-type(7) > div.Recipes__card-head:nth-of-type(1) > div.Recipes__card-edit:nth-of-type(1)
HTML: <div class="Recipes__card-edit" tabindex="0"><img src="https://workshop2.dequelabs.com/46c642c98aecd147b905d063efb8a97d.png" class="edit" alt="Edit"></div>
</failure>
</testcase>
</testsuites>Exportação de teste salvo
As quebras de linha são escapadas para que todas as strings fiquem em uma única linha.
A exportação de „Teste Salvo e Problemas“ segue o esquema Formato de Exportação axe.
