Después de ejecutar un escaneo, será llevado a la pestaña "Resumen" con los resultados del escaneo. Allí encontrará un botón "Exportar". Al hacer clic, aparecerá un cuadro de diálogo que le permitirá configurar el tipo de exportación que desea junto con el formato de exportación.
¿Sabías que puedes compartir un registro de prueba guardado completo y todas sus incidencias? Obtenga más información sobre compartir registros de pruebas guardados
Tipos de exportación
Exportación de problemas
La exportación de incidencias se admite en formatos CSV, JSON y JUnit XML. Esta exportación contendrá información correspondiente a cada violación de accesibilidad encontrada tanto en las pruebas automáticas como en las pruebas guiadas inteligentes.
Esquemas CSV compatibles
axe DevTools Pro CSV (default)
Nombre de la columna | descripción |
---|---|
Rule ID | The identifier for the accessibility rule |
Description | A description of the accessibility rule |
Help | Helpful information regarding the rule violated leading to issue |
Help URL | A URL with help for the given rule |
Impact | The impact or severity of the issue |
Manual | Whether the issue was found manually (IGT) or not |
Needs Review | Whether or not the potential issue needs manual review |
IGT | Which specific IGT was run to find issue (blank if not found by IGT) |
Selector | The CSS selector for the issue element |
Summary | Summary of issue |
Source Code | The HTML source code snippet of the issue element |
Tags | Metadata for the issue (categories, wcag checkpoint identifiers, etc.) |
Found By | User who peformed test in which issue was raised |
Test Title | The name of the saved test |
Test URL | The url of the page tested |
Share URL | The shared issue URL (only populated when issue or saved test explicitly shared) |
Created At | When the issue was first created |
axe Reporter CSV
This schema is compatible with the "axe Reporter" CSV generated from axe DevTools API integrations. This schema is especially useful if you are aggregating data from both the axe DevTools browser extension and APIs/CLI.
column name | description |
---|---|
Page URL | The url of the page tested |
Page Title | The document title of the page tested |
Outcome | The outcome of the issue (will be blank for axe DevTools Extension) |
Impact | The impact or severity of the issue |
Code Snippet | The HTML source snippet of the issue element |
Selector | The CSS selector for the issue element |
Remediation | Issue remediation info |
Manual | Whether the issue was found manually (IGT) or not |
Rule ID | The identifier for the accessibility rule associated with the issue |
Help | Helpful information regarding the rule violated leading to issue |
Description | A description of the accessibility rule |
Help URL | A URL with help for the given rule |
Standard | Which WCAG standard/checkpoint the issue falls within |
WCAG 2 Success Criteria | The WCAG success criteria for the issue |
Section 508 Paragraph | Applicable Section 508 information for the issue |
Tags | Metadata for the issue (categories, wcag checkpoint identifiers, etc.) |
Date | Date the issue was found |
axe-core | Version of axe-core used in test which raised issue |
Needs Review | Whether or not the potential issue needs manual review |
IGT | Which specific IGT was run to find issue (blank if not found by IGT) |
Found By | User who peformed test in which issue was raised |
Test Title | The title name of the test |
Share URL | The shared issue URL (only populated when issue or saved test explicitly shared) |
Supported JSON Schema
The JSON issue export is an array of issue data with the following properties for each issue:
Property name | Type | Description |
---|---|---|
axeVersion |
string | The version of axe-core used for the test in which the issue was raised. |
createdAt |
string | The date/time in which the issue was raised. |
description |
string | A description of the issue. |
foundBy |
string | User who performed the test in which the issue was raised. |
help |
string | Helpful information regarding the rule violated leading to issue. |
helpUrl |
string | A URL with help for the given rule. |
igt |
string | The name of the IGT in which the issue was rased (null if not found in IGT). |
impact |
string | The impact or severity of the issue. |
isManual |
boolean | Whether the issue was found manually (IGT) or not. |
needsReview |
boolean | Whether or not the potential issue needs manual review. |
ruleId |
string | The identifier for the accessibility rule associated with the issue. |
selector |
array | An array of CSS-Selectors to target the node associated with the violation. Read axe-core's documentation on selectors. |
shareURL |
string | The shared issue URL (only populated when issue or saved test explicitly shared). |
source |
string | The HTML source snippet of the issue element. |
summary |
string | Summary of issue. |
tags |
array | Array of string tags of metadata for the issue (categories, wcag checkpoint identifiers, etc.). |
testName |
string | The name of the saved test in which the issue was found. |
testPageTitle |
string | The title of the document in which the issue was found. |
testUrl |
string | The url of the page tested. |
JUnit XML Schema
All the issue data is wrapped in a <testsuites />
element. This element will contain the following attributes:
Attribute | Description | Example |
---|---|---|
id |
The WCAG level selected at the time of export. | "wcag21AA" |
name |
The name of the saved test or, for exports done before saving the results, the title of the document being tested | "Recipe Dashboard" |
package |
The name of the software in which the testing was performed. | "axe DevTools Browser Extension" |
timestamp |
The date/time of export. | "2023-04-04T00:08:10.772Z" (result of new Date().toISOString() ) |
Within the <testsuites />
there are <testcase />
elements. Each <testcase />
represents a "rule" failure. This element will contain the following attributes:
Attribute | Description | Example |
---|---|---|
name |
The rule ID. | "aria-role-missing" |
id |
Which IGT the issue was found in (will be omitted for auto issues). | "igt:keyboard" |
Within each <testcase />
element is a <failure />
element. This element represents a failure of the rule defined in the <testcase />
. The <failure />
contains the following attributes:
Attribute | Description | Example |
---|---|---|
message |
The description of the issue (failure) followed by the rule help URL | "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 |
The impact of the issue. | "critical" |
Within each <failure />
element each instance of the failure's selector ("CSS Path") and source code ("HTML") will be printed out. Each instance will be separated by --------
. An example of this text is as follows:
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>
--------
Ruta CSS: 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>
Example JUnit XML file
The following is an example JUnit XML export. In this example we have:
- WCAG 2.1 AA level selected
- Saved test name of "Recipe Dashboard"
- 2
semantic-data-table-headers
issues raised in the Table IGT - 3
keyboard-inaccessible
issues raised in the Keyboard IGT - 2
aria-role-missing
issues raised in the Keyboard IGT
<?xml version="1.0" encoding="utf-8"?>
<testsuites
id="wcag21aa"
nombre="Panel de recetas"
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="encabezados-de-tabla-de-datos-semánticos"
id="igt:table"
>
<failure
message="La tabla de datos tiene un marcado de celda de encabezado faltante o incompleto. https://docs.deque.com/issue-help/1.0.0/en/semantic-data-table-headers"
impacto="crítico"
>
Ruta CSS: 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>
--------
Ruta CSS: 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="No hay forma de realizar la función usando solo el teclado en la misma pantalla o en una versión alternativa que cumpla con los requisitos. https://docs.deque.com/issue-help/1.0.0/en/keyboard-inaccessible"
impacto="crítico"
>
Ruta CSS: 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>Cocinar cuadrados de limón</span><span class="BracketRight" aria-hidden="true">]</span></div>
--------
Ruta CSS: 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>Cocinar pastel de chocolate</span><span class="BracketRight" aria-hidden="true">]</span></div>
--------
Ruta CSS: 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>Cocinar ensalada de col rizada</span><span class="BracketRight" aria-hidden="true">]</span></div>
</failure>
</testcase>
<testcase
name="aria-role-missing"
id="igt:keyboard"
>
<fallo
message="Falta el rol del elemento o no es apropiado para la función del elemento. https://docs.deque.com/issue-help/1.0.0/en/aria-role-missing"
impacto="crítico"
>
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>
--------
Ruta CSS: 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>
Exportación de prueba guardada
Las nuevas líneas se escapan para que todas las cadenas estén en una sola línea.
La exportación de "Pruebas y problemas guardados" sigue el esquema formato de exportación axe .