Referência da API para Java Playwright
Referência da API para a classe AxePlaywrightBuilder na integração do Axe DevTools for Web Java Playwright
Este documento fornece uma referência da API para a classe Java AxePlaywrightBuilder, que é fornecida pela integração Java do Playwright.
A maioria dos métodos na classe AxePlaywrightBuilder retorna um objeto AxePlaywrightBuilder, o que permite encadear facilmente vários métodos. Veja os exemplos de código abaixo para exemplos de encadeamento de métodos.
Construtores
| Construtor | Descrição |
|---|---|
| AxePlaywrightBuilder(Page) | Construtor padrão que cria um objeto AxePlaywrightBuilder. |
| AxePlaywrightBuilder(Page, File) | Cria um objeto AxePlaywrightBuilder e especifica um arquivo JSON contendo regras personalizadas para serem usadas durante a análise. |
| AxePlaywrightBuilder(Page, String) | Cria um objeto AxePlaywrightBuilder enquanto especifica um String JSON contendo regras personalizadas. |
AxePlaywrightBuilder(Page)
Inicializa uma nova instância da classe AxePlaywrightBuilder para o objeto Page especificado.
public AxePlaywrightBuilder(Page page);Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
| page | com.microsoft.Playwright.Page | O objeto Page a ser usado para a análise de acessibilidade. |
Exemplo
O exemplo de código a seguir demonstra este construtor. Também mostra como criar um objeto Page e um objeto AxePlaywrightBuilder com aquele objeto Page.
// Example Page
Page page = browser.newPage();
AxePlaywrightBuilder axePlaywrightBuilder = new AxePlaywrightBuilder(page);AxePlaywrightBuilder(Page, File)
Inicializa uma nova instância da classe AxePlaywrightBuilder com o objeto Page especificado e o objeto File especificado. O File contém regras personalizadas em um arquivo JSON.
public AxePlaywrightBuilder(Page page, File rules);Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
| page | com.microsoft.Playwright.Page | O objeto Page necessário. |
| regras | File | Um objeto File representando um arquivo JSON de regras de acessibilidade personalizadas. |
Exemplo
O exemplo a seguir mostra como usar este construtor.
// Example Page
Page page = browser.newPage();
File customRuleset = new File("somePath/custom-ruleset.json")
AxePlaywrightBuilder axePlaywrightBuilder = new AxePlaywrightBuilder(page, customRuleset);AxePlaywrightBuilder(Page, String)
Inicializa uma nova instância da classe AxePlaywrightBuilder com o objeto Page especificado e o objeto String especificado, que contém regras personalizadas em uma string JSON.
public AxePlaywrightBuilder(Page page, String rules);Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
| page | com.microsoft.Playwright.Page | O objeto Page necessário |
| rules | String | Uma string JSON representando um conjunto de regras personalizadas de acessibilidade. |
Exemplo
O exemplo de código a seguir demonstra este construtor.
// Example Page
Page page = browser.newPage();
String customRuleset = "{...}"
AxePlaywrightBuilder axePlaywrightBuilder = new AxePlaywrightBuilder(page, customRuleset);Métodos
| Método | Descrição |
|---|---|
| analyze | Analisa a página Playwright e retorna um objeto AxeResults da análise concluída. |
| configure(File) | Fornece uma configuração personalizada de como axe-core é executado através de um arquivo JSON. |
| configure(String) | Fornece uma configuração personalizada de como axe-core é executado através de uma string JSON. |
| disableRules | Impede que as regras especificadas sejam executadas durante a análise. |
| exclude | Especifica seletores CSS a serem usados para excluir determinado conteúdo HTML durante a análise. |
| include | Especifica seletores CSS que incluem conteúdo HTML durante a análise. |
| setLegacyMode | Define o modo legado para excluir problemas de acessibilidade que podem ocorrer em frames e iframes de domínio cruzado. |
| withAxeSource(File) | Fornece uma versão personalizada do axe-core usando um objeto File. |
| withAxeSource(String) | Fornece uma versão personalizada do axe-core utilizando um objeto String. |
| withOnlyBestPracticeRules | Verifica a acessibilidade usando apenas as regras de melhores práticas. |
| withOnlyExperimentalRules | Verifica a acessibilidade usando apenas as regras experimentais. |
| withRules | Limita as regras de acessibilidade às especificadas. |
| comTags | Limite as regras de acessibilidade verificadas à lista especificada de tags. |
analisar
Analise a página do Playwright (especificada quando o objeto AxePlaywrightBuilder foi criado) e retorne um objeto AxeResults da análise concluída.
AxeResults AxePlaywrightBuilder.analyze();Retornos
- AxeResults
Exemplo
O exemplo de código a seguir demonstra como usar o método de análise.
AxePlaywrightBuilder axePlaywrightBuilder = new AxePlaywrightBuilder(page);
AxeResults axeResults = axePlaywrightBuilder.analyze();
/* Usage may include:
axeResults.getViolations() - returns only violation results
axeResults.getPasses() - returns only pass results
axeResults.getIncomplete() - returns only incomplete results
*/configurar(Arquivo)
Forneça uma configuração personalizada ao axe-core via um arquivo JSON.
public AxePlaywrightBuilder configure(File axeConfigure);Para mais informações sobre o formato do arquivo de configuração, consulte configuração do axe-core.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
| arquivo | Arquivo | Um objeto Arquivo representando uma configuração do axe-core em JSON. |
Exemplo
O exemplo a seguir mostra como acessar uma configuração e usá-la com um objeto AxePlaywrightBuilder.
File myAxeConfigure = new File("./axe-configure.json");
AxePlaywrightBuilder axePlaywrightBuilder = new AxePlaywrightBuilder(page)
.configure(myAxeConfigure);
configurar(String)
Forneça uma configuração personalizada ao axe-core (a tecnologia subjacente para analisar a acessibilidade) executada via uma string JSON.
public AxePlaywrightBuilder configure(String axeConfigure);Para mais informações sobre o formato do arquivo de configuração, consulte configuração do axe-core.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
| axeConfig | String | Um objeto String representando uma configuração do axe-core em JSON. |
Exemplo
O exemplo a seguir mostra como acessar uma configuração e usá-la com um objeto AxePlaywrightBuilder.
String myAxeConfigure = "{..}"
AxePlaywrightBuilder axePlaywrightBuilder = new AxePlaywrightBuilder(page)
.configure(myAxeConfigure);desabilitarRegras
Desative regras para não serem executadas durante a análise.
public AxePlaywrightBuilder disableRules(List<String> rules);Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
| regras | Lista<String> | Uma lista de strings representando regras a serem desativadas durante a análise. |
Retornos
- AxePlaywrightBuilder
Exemplo
O exemplo a seguir mostra como desabilitar a verificação de acessibilidade para uma única regra usando o método singletonList da classe Coleções e para várias regras usando um Lista.
// Single Rule
AxePlaywrightBuilder axePlaywrightBuilder1 = new AxePlaywrightBuilder(page)
.disableRules(Collections.singletonList("color-contrast"));
// Multiple Rules
AxePlaywrightBuilder axePlaywrightBuilder2 = new AxePlaywrightBuilder(page)
.disableRules(Arrays.asList("color-contrast", "image-alt"));excluir
Especifique seletores CSS para excluir elementos HTML durante a análise.
public AxePlaywrightBuilder exclude(List<String> excludeCSS);Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
| excludeCSS | List<String> | Uma lista de seletores CSS especificando elementos que não serão incluídos em uma análise de acessibilidade. |
Retornos
- AxePlaywrightBuilder
Exemplos
O exemplo a seguir mostra como excluir elementos da análise com esses atributos:
- class="some-class"
- class="some-other-class"
new AxePlaywrightBuilder(page)
.exclude(Collections.singletonList(".some-class"))
.exclude(Collections.singletonList(".some-other-class"));
O exemplo a seguir mostra como excluir elementos usando seletores CSS de iframe.
// To exclude everything within html of parent-iframe
new AxePlaywrightBuilder(page)
.exclude(Arrays.asList("#parent-iframe", "#html"))incluir
Seletores CSS para incluir durante a análise
public AxePlaywrightBuilder include(List<String> includeCSS);Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
| includeCSS | List<String> | Uma lista de seletores CSS especificando elementos que serão incluídos em uma análise de acessibilidade. |
Retornos
- AxePlaywrightBuilder
Exemplos
O exemplo a seguir mostra como incluir duas classes diferentes na análise. Observe como o exemplo usa encadeamento de métodos para especificar mais de uma classe CSS.
new AxePlaywrightBuilder(page)
.include(Collections.singletonList(".some-class"))
.include(Collections.singletonList(".some-other-class"));
O exemplo a seguir mostra como incluir elementos usando seletores CSS de iframe.
// To include everything within html of parent-iframe
new AxePlaywrightBuilder(page)
.include(Arrays.asList("#parent-iframe", "#html"))setModoLegado
Exclui problemas de acessibilidade que podem ocorrer em frames e iframes de domínio cruzado.
public AxePlaywrightBuilder setLegacyMode(boolean legacyMode);Espera-se que esta API seja removida na próxima versão do Axe DevTools.
Retornos
- AxePlaywrightBuilder
Exemplos
O exemplo a seguir ativa o modo legado.
new AxePlaywrightBuilder(page)
.setLegacyMode(true);comFonteAxe(File)
Forneça uma versão personalizada do axe-core usando o objeto File do Java
public AxePlaywrightBuilder withAxeSource(File file);Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
| arquivo | Arquivo | Um arquivo contendo JavaScript que implementa axe-core. |
Retorna
- AxePlaywrightBuilder
Exemplos
O exemplo a seguir mostra como usar um arquivo diferente para axe-core em vez da versão fornecida. Você precisaria fazer isso apenas em casos especializados.
File axeLegacySource = new File("somepath/axe-core@legacy.js");
new AxePlaywrightBuilder(page)
.withAxeSource(axeLegacySource);withAxeSource(String)
Forneça uma versão personalizada do axe-core usando uma fonte já analisada
public AxePlaywrightBuilder withAxeSource(String src);Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
| src | String | O arquivo fonte JavaScript representado como um String. |
Retorna
- AxePlaywrightBuilder
Exemplos
O exemplo a seguir mostra como ler um arquivo em um String e usá-lo como o arquivo fonte com withAxeSource.
String source = IOUtils.toString(somepPath.toURI(), StandardCharsets.UTF_8);
new AxePlaywrightBuilder(page)
.withAxeSource(source);withOnlyBestPracticeRules
Verifique problemas de acessibilidade com apenas o conjunto de regras das melhores práticas ativado.
public AxePlaywrightBuilder withOnlyBestPracticeRules();Retorna
- AxePlaywrightBuilder
Exemplos
O exemplo a seguir mostra como habilitar a análise de acessibilidade usando apenas as regras de melhores práticas.
new AxePlaywrightBuilder(page)
.withOnlyBestPracticeRules();
withOnlyExperimentalRules
Verifique problemas de acessibilidade com apenas o conjunto de regras experimentais ativado
public AxePlaywrightBuilder withOnlyExperimentalRules();Retorna
- AxePlaywrightBuilder
Exemplos
O exemplo a seguir mostra como habilitar a análise de acessibilidade usando apenas as regras experimentais.
new AxePlaywrightBuilder(page)
.withOnlyExperimentalRules();
withRules
Limite as regras a serem executadas durante a análise de acessibilidade para aquelas especificadas.
public AxePlaywrightBuilder exclude(List<String> rules);Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
| rules | List<String> | Uma lista de regras a serem usadas para análise de acessibilidade. |
Retorna
- AxePlaywrightBuilder
Exemplos
O exemplo a seguir mostra duas maneiras diferentes de usar o método withRules. O primeiro cria um List com uma regra, color-contrast. O segundo cria um List contendo as regras contraste de cor e imagem-alt.
// Single Rule
new AxePlaywrightBuilder(page)
.withRules(Collections.singletonList("color-contrast"));
// Multiple Rules
new AxePlaywrightBuilder(page)
.withRules(Arrays.asList("color-contrast", "image-alt"));comTags
Limita a análise de acessibilidade ao conjunto de regras ou conjuntos de regras pertencentes às tags especificadas.
public AxePlaywrightBuilder withTags(List<String> tags);Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
| tags | Lista<String> | Uma lista de tags que incluem as regras que você gostaria de incluir na análise de acessibilidade. |
Retorna
- AxePlaywrightBuilder
Exemplos
Este exemplo mostra como limitar a análise de acessibilidade às regras pertencentes às tags especificadas. O primeiro trecho de código mostra como limitar a análise às regras que fazem parte da especificação wcag21aa. O segundo trecho mostra como limitar a análise à especificação wcag21aa e às regras melhor-prática.
// Single tag
new AxePlaywrightBuilder(page)
.withTags(Collections.singletonList("wcag21aa"));
// Multiple tags
new AxePlaywrightBuilder(page)
.withTags(Arrays.asList("wcag21aa", "best-practice"));