Verificar Parte de uma Tela

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
Not for use with personal data

Se você deseja testar um componente ou recurso específico para acessibilidade, pode executar uma verificação direcionada para aquele elemento ou visualização, em vez de escanear a tela inteira.

Use o run(onElement: ) Método

Um único elemento ou visualização pode ser escaneado utilizando o run(onElement: ) método. Este método aceita qualquer XCUIElement como parâmetro. Ele pode aceitar desde um XCUIApplication (o aplicativo inteiro) até um elemento específico, como um botão, rótulo, campo de texto ou qualquer outro elemento da IU.

Para encontrar um elemento específico, use consultas XCTest. Encontre mais informações na documentação da Apple:

Recomendamos validar que o elemento para o qual você está escaneando existe e está na tela antes de executar uma verificação, para garantir que o framework seja capaz de encontrar o elemento e retornar os resultados corretos. Se o elemento não for encontrado na tela no momento da verificação, um resultado incompleto pode ser postado em vez disso.

Exemplo

Abaixo está um exemplo de teste que procura um botão com o título "Menu", verifica sua existência na tela e realiza uma verificação nele. Este é um exemplo de uma consulta básica, embora consultas mais complexas envolvendo filhos e descendentes sejam possíveis.

var axe: AxeDevTools?
var app = XCUIApplication()

override func setUpWithError() throws {
    // log in to AxeDevTools
    axe = try? AxeDevTools.startSession(apiKey: "<DEQUE_APIKEY>",
            projectId: "<DEVHUB_PROJECT_ID>")

    // launch app and prevent tests from continuing if element is not found
    app.launch()
    continueAfterFailure = true
}

func testAccessibility() throws {
    // finds a button with the title or accessibilityIdentifier "Menu"
    // .firstMatch ensures that the test doesn't fail if multiple matching elements exist
    let buttonToTest = app.buttons["Menu"].firstMatch
    XCTAssert(buttonToTest.isHittable, "Button 'Menu' does not exist on the screen.")

    let result = try axe.run(onElement: buttonToTest)
    try axe.postResult(result)
}

Quais Regras Podem Rodar em Verificações de Tela Parcial?

Todas as regras podem rodar em verificações de tela parcial, a menos que sejam explicitamente ignoradas pelo usuário. No entanto, as ScreenTitle e InScrollView regras podem retornar NeedsReview se a verificação de tela parcial não incluir todas as informações necessárias para passar ou falhar.