Gerando Relatórios com Python
Gerando saída JSON compatível com reporter e configurando relatórios com o Axe DevTools para Web para Python
axe-devtools-api produz resultados em um formato compatível com o Axe DevTools reporter.
Criando JSON compatível com o reporter
Axe.analyze() retorna um objeto Results. Ele pode ser convertido em uma string JSON compatível com o repórter por meio de Results.to_json().
Aqui está um exemplo onde analisamos uma página e salvamos os resultados em um arquivo:
axe = Axe(driver)
results = axe.analyze()
with open("my_results.json", "w") as f:
f.write(results.to_json())Configurando o relatório
Os metadados do relatório são configurados através da classe ReportConfiguration.
Uma vez que um objeto ReportConfiguration está no estado desejado, ele pode ser aplicado a uma verificação de duas maneiras:
-
Aplique-o a uma única verificação passando-o para
Axe():report_config = ReportConfiguration().test_suite_name("my suite").ui_state("some state") axe = Axe(driver, report_configuration=report_config) results = axe.analyze() assert results.name == "my suite" assert results.id == "some state" -
Configure-o como padrão para todas as análises que não o sobrescrevam individualmente:
ReportConfiguration().test_suite_name("my suite").set_as_default() axe = Axe(driver) results = axe.analyze() assert results.name == "my suite"
Para obter a instância ReportConfiguration atualmente definida como padrão, chame ReportConfiguration.get_default().
axe_devtools_api.Results
Retornado por Axe.analyze(). Contém os resultados do axe-core e fornece métodos para inspecioná-los e serializá-los.
Propriedades
name
O nome do conjunto de testes. Definido via ReportConfiguration.test_suite_name(). Padrão é "axe-run".
id
O identificador da verificação — uma combinação do valor do estado da UI (definido via ReportConfiguration.ui_state()) e um UUID, unidos por um hífen. Padrão é "check-<uuid>".
Métodos
to_json()
Converte os resultados para uma string JSON compatível com o reporter.
is_axe_clean()
Retorne True se o axe-core foi executado sem erro e não encontrou violações.
is_errored()
Retorne True se o axe-core encontrou um erro durante a execução.
violations_report()
Retorna uma string legível ao humano resumindo quaisquer violações encontradas. Se axe-core apresentou erro, retorna a mensagem de erro em vez disso.
axe_devtools_api.ReportConfiguration
Configura os metadados do relatório, como o nome da suíte de testes e informações do agente do usuário.
report_config = ReportConfiguration().test_suite_name("my suite").ui_state("login page")
axe = Axe(driver, report_configuration=report_config)ReportConfiguration()
Crie um novo ReportConfiguration com valores padrão.
get_default()
Retorne o ReportConfiguration padrão atual. Note que o padrão pode ser alterado via set_as_default().
set_as_default()
Defina este objeto como a configuração padrão para todas as instâncias de Axe que não especificam a sua própria.
reset_default()
Redefina a configuração padrão para seu estado inicial.
test_suite_name(name)
Defina o nome do conjunto de testes. Usado como o campo name no objeto Results.
name: O nome do conjunto de testes.
Retorna este objeto para encadeamento.
ui_state(id)
Defina o estado da UI para este conjunto de testes. Usado como o campo id no objeto Results.
id: Um identificador de string para o estado da UI (por exemplo, "login-page" ou "dark-mode").
Retorna este objeto para encadeamento.
user_agent(ua)
Define a string do agente de usuário registrada no relatório.
ua: A string do agente do usuário.
Retorna este objeto para encadeamento.
test_machine(t_machine)
Define o nome da máquina onde os testes foram executados.
t_machine: Um identificador para a máquina.
Retorna este objeto para encadeamento.
Veja Também
- Enviando Resultados de Acessibilidade JSON para o axe Reports descreve como enviar seus resultados para o axe Reports.
- Obtendo uma Chave de API do axe Reports explica como obter uma chave de API para começar a usar o axe Reports.
- Criando e Filtrando Relatórios mostra como você pode criar relatórios de acessibilidade em CSV, XML ou HTML a partir dos seus resultados de acessibilidade em JSON. Você também pode filtrar sua saída por gravidade usando esta ferramenta.
- Como Resultados JSON são Armazenados no Disco descreve as convenções de nomenclatura de arquivos para resultados de acessibilidade em JSON.
- Usando a CLI para Enviar Resultados de Acessibilidade para o axe Developer Hub mostra como você pode enviar seus arquivos de resultados
.jsonpara axe Developer Hub.
