Controlando a Análise de Páginas

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

O modo manual do Watcher permite que você escolha quando ou quais páginas do seu site serão analisadas para problemas de acessibilidade

Not for use with personal data

Normalmente, o axe Developer Hub analisa automaticamente cada página visitada pelo seu conjunto de testes (conhecido como modo automático). Às vezes, essa análise automática resulta em muitas páginas sendo analisadas, páginas que não são do seu interesse sendo analisadas, ou páginas de outros departamentos da sua organização—páginas sobre as quais sua equipe não tem responsabilidade—sendo analisadas. Você pode desativar o modo automático, assim você determina quando (ou se) cada página deve ser analisada (conhecido como modo manual).

Cenários

Analisando Partes de um Site

Você pode usar o modo manual para analisar apenas parte de um site. Por exemplo, se sua equipe é responsável pela funcionalidade do carrinho de compras no seu site, mas o seu conjunto de testes precisa visitar páginas do catálogo (que sua equipe não possui) para adicionar produtos ao carrinho, você provavelmente vai querer evitar testar a acessibilidade das páginas do catálogo. Quando chegar à página do carrinho de compras no seu conjunto de testes, você pode reativar a análise automática. Depois, quando os testes do carrinho de compras estiverem completos, você poderá desativar novamente a análise automática.

Próximas Etapas

Carregamento de Conteúdo Dinâmico

Você pode usar o modo manual para evitar testar páginas com sequências de carregamento complexas. Se a página que você deseja testar carrega dinamicamente muitos recursos em segundo plano, você pode desligar o modo automático até que ela esteja totalmente carregada. Isso limitará os problemas de acessibilidade àqueles que existem apenas quando a página está totalmente carregada. Também evitaria verificações de acessibilidade durante animações de carregamento ou outras interfaces de carregamento.

Próximas Etapas

Capturando Estados Específicos de Página

Se você quiser garantir que um estado de página específico seja analisado, você pode acionar manualmente uma análise de acessibilidade após configurar sua página.

Próximas Etapas

Limitando o Escopo de um Grande Conjunto de Testes

Desativando a análise automática, você pode usar um conjunto de testes maior e mais abrangente, mas limitar seus testes de acessibilidade a apenas uma parte dele. Nesse caso, você não precisa dividir seu conjunto de testes maior em conjuntos de testes menores e apenas testar a acessibilidade nos conjuntos de testes que lhe interessam.

Próximas Etapas

Como Usar o Modo Manual

Você pode desativar a análise automática na sua configuração (veja Desativar Análise Automática na Configuração abaixo).

A análise de páginas é controlada por três métodos no objeto Controller ou pelos comandos equivalentes no Cypress.

  1. analisar() (em Cypress: **cy.axeWatcherAnalyze**()) para realizar uma análise da página atual.
  2. **iniciar**() (em Cypress: **cy.axeWatcherStart**()) para habilitar a análise automática de acessibilidade.
  3. **parar**() (em Cypress: **cy.axeWatcherStop**()) para desativar a análise automática de acessibilidade.

Obtendo um Objeto Controller

(JavaScript/TypeScript) Para informações sobre como obter um **Controller** objeto, consulte **etapa quatro** da página de instruções do seu framework de teste:

**JavaScript**:

**TypeScript**:

(Java) Para Java, veja **etapa três** da página de instruções do framework de teste. **Etapa quatro** mostra como converter o **wrappedDriver** para chamar seu método **flush()** :

Cypress

(JavaScript/TypeScript) Para Cypress, você pode usar o objeto global **cy** com estes comandos equivalentes:

Método do Controller Comando do Cypress
**analisar**() **axeWatcherAnalyze**()
**flush**() **axeWatcherFlush**()
**start**() **axeWatcherStart**()
**stop**() **axeWatcherStop**()

Teste do Playwright

(JavaScript/TypeScript) Para o Playwright Test, o **Controller** objeto (**PlaywrightController**) pode ser obtido a partir de **page**, que contém um **axeWatcher** . Você pode usar o **axeWatcher** para invocar os métodos do **Controller** (exemplo abaixo em TypeScript):

import { test, expect } from './fixtures'

test('example test', async ({ page }) => {
  await page.goto('https://example.com')
  await page.axeWatcher.analyze()
})

Desativar a Análise Automática na Configuração

Você pode desativar o teste automático de acessibilidade

(JavaScript/TypeScript) Por exemplo, você define **autoAnalyze** para *false* na sua configuração (a linha está destacada no exemplo de JavaScript do Cypress abaixo):

const { defineConfig } = require('cypress');
const { cypressConfig } = require('@axe-core/watcher/cypress/config');

const ACCESSIBILITY_API_KEY = process.env.ACCESSIBILITY_API_KEY
const PROJECT_ID = process.env.PROJECT_ID

module.exports = defineConfig(  
  cypressConfig({
    axe: {
      apiKey: ACCESSIBILITY_API_KEY,      projectId: PROJECT_ID,
      autoAnalyze: false
    },
    // Your existing Cypress configuration code here
  })
);

Desativar a Análise Automática por Meio de uma Chamada

Com Cypress, você pode usar o comando **axeWatcherStop**():

cy.axeWatcherStop()

(JavaScript/TypeScript) As outras integrações de teste usam o método **stop**() no seu objeto Controller:

await controller.stop()

(Java) Na integração do Java Watcher, você usa o AxeWatcherController.stop() método.

Veja Obtendo um Objeto Controlador para mais informações sobre como obter um objeto controlador para o seu framework de teste.

Analisar Páginas Manualmente

Após desativar a análise automática, você pode adicionar chamadas para (JavaScript/TypeScript) axeWatcherAnalyze() (para Cypress) ou analyze() (com as outras integrações de teste). (Java) Para Java, você usa o AxeWatcherController.analyze()](dh-java-watchercontroller#analyze) método.

Por exemplo, para Cypress:

describe('My Login Application', () => {
  it('should login with valid credentials', () => {
    cy.visit('https://the-internet.herokuapp.com/login')
      // Analyze the page.
      .axeWatcherAnalyze()      .get('#username')
      .type('tomsmith')
      .get('#password')
      .type('SuperSecretPassword!')
      .get('button[type="submit"]')
      .click()
      .wait(1000)
      // Analyze the page.
      .axeWatcherAnalyze()      // Restart automatic axe analysis.
      .axeWatcherStart()
      .get('#flash')
      .should('exist')
  })
})

Veja Obtendo um Objeto Controlador para mais informações sobre como obter um objeto controlador para o seu framework de teste.

Ativar Análise Automática

Com o Cypress, você pode usar o comando axeWatcherStart :

cy.axeWatcherStart()

As outras integrações de teste usam o método start no seu objeto Controlador:

await controller.start()

Veja Obtendo um Objeto Controlador para mais informações sobre como obter um objeto controlador para o seu framework de teste.

Veja Também