Barrierefreiheitstools – AccScope
Mit dem Tool AccScope können Entwickler und Tester die Barrierefreiheit ihrer App während der Entwicklungs- und Entwurfsphase untersuchen und nicht erst in den letzten Testphasen des Entwicklungszyklus der App. Tests können sogar in frühen Prototypphasen beginnen. AccScope kann visualisieren, wie eine Bildschirmsprachausgabe die von einer App bereitgestellten Benutzeroberflächenautomatisierungsinformationen verfügbar macht, und Bereiche anzeigen, in denen Sie Ihrer App Informationen oder Unterstützung hinzufügen sollten, um die Barrierefreiheit zu verbessern.
Hinweis
AccScope ist ein Legacytool. Es wird empfohlen, stattdessen Accessibility Insights zu verwenden.
AccScope wird mit dem Windows Software Development Kit (SDK) installiert. Es befindet sich im Ordner \bin\<version>\<platform>\AccScope des SDK-Installationspfads. Führen Sie das Programm AccScope.exe aus.
AccScope ist eine Desktop-App, keine Windows Store-App. Sie können sie verwenden, um jede App anzusehen, die als Fenster angezeigt wird, einschließlich einer Desktop-App oder einer Windows Store-App.
Möglicherweise müssen Sie AccScope als Administrator ausführen, wenn Sie es zum ersten Mal verwenden, um den Sprachausgabemodus zu aktivieren.
AccScope ist als Teil der Binärdateien für Barrierefreiheitstools im Windows SDK verfügbar. Es wird nicht als separater Exe-Download ausgegeben und ist in früheren SDKs nicht vorhanden.
- Wählen Sie Aktualisieren aus, um alle Informationen in AccScope zu aktualisieren, um dem aktuellen Status des Zielfensters zu entsprechen. Für eine Benutzeroberfläche, die eine große Anzahl von Elementen enthält, kann dies mehrere Sekunden dauern.
- Aktivieren oder deaktivieren Sie Immer oben, um das Fensterverhalten der AccScope-Benutzeroberfläche zu ändern. Immer oben aktiviert ist die Standardeinstellung.
- Wählen Sie Beenden aus, um AccScope zu beenden.
Wählen Sie Vollbild aus, um das AccScope-Tool in einer Vollbildansicht auszuführen (verwenden Sie dann die Tabulatortaste, um das Zielfenster anzuzeigen). Wenn sowohl AccScope als auch die Ziel-App vollbildig ausgeführt werden, entsprechen die Platzierung, begrenzungsgebundene Rechtecke und die allgemeine Visualisierung von Elementen in Ihrer App und der AccScope-Ansicht.
Hinweis
AccScope und sein Ziel sollten auf demselben Display ausgeführt werden.
Wählen Sie den Automatischen Fokus aus, um AccScope zu aktivieren, um das Zielfenster zu ändern, wenn ein Benutzer den Fokus auf das Fenster verschiebt (mit Maus oder Tastatur).
Wählen Sie Automatische Aktualisierung aus, um den AccScope-Modus zu aktivieren, der alle Barrierefreiheitsdaten des Zielfensters alle 5 Sekunden aktualisiert. Dies ist nützlich, wenn sich die Microsoft-Benutzeroberflächenautomatisierungsdaten des Zielfensters ständig ändern.
Wählen Sie Liveregionen aus, um alle Liveregionen hervorzuheben, in denen Benachrichtigungen im Zielfenster angezeigt werden. Ein Liveregion-Ereignis, das ausgelöst wird, zeigt ein rotes Popup an, das Informationen zu der Liveregion enthält, einschließlich des Namens und seines Werts „aria-live“ (oder der entsprechende ARIA-Wert analog für Apps, die nicht direkt HTML verwenden, sondern das Konzept der Live Regions in der Unterstützung für die Benutzeroberflächenautomatisierung verwenden).
Sie können ein Zielfenster über einen der folgenden Modi anzeigen:
- Blattsteuerelement: Zeigt eine Benutzeroberflächenautomatisierungsansicht von Steuerelementelementen mit Beziehungen zwischen übergeordneten und untergeordneten Elementen, d. h. eine Ansicht interaktiver Steuerelemente auf „Blattebene“. Verwenden Sie diese Option, um festzustellen, ob alle interaktiven Steuerelemente in der Struktur der Benutzeroberflächenautomatisierung für eine Steuerelementansicht korrekt angezeigt werden.
- Textmuster: Zeigt sichtbare Textbereiche der TextPattern-Container aus dem Zielfenster an. Verwenden Sie diese Option, um die sichtbaren Textbereiche von TextPattern-Elementen der Benutzeroberflächenautomatisierung visuell darzustellen.
- Sprachausgabe: Zeigt die Elemente der Benutzeroberflächenautomatisierung an, welche die Sprachausgabe mithilfe der Metapher „Elementnavigation“ identifizieren kann.
- Benutzerdefinierter Filter: Zeigt eine gefilterte Steuerelementstruktur mit einer Auswahl von Steuerelementuntermengen an: Schaltfläche, Kontrollkästchen, Kombinationsfeld, Raster, Hyperlink, Liste, Menü oder Tabelle.
Durch das Ändern der Elementmoduseinstellung wird eine Aktualisierung der Visualisierung ausgelöst. Für eine Benutzeroberfläche, die eine große Anzahl von Elementen enthält, kann dies mehrere Sekunden dauern.
Sie können entweder Visuell oder Liste als Visualisierungsmodus für das AccScope-Layout auswählen. Visuell platziert die Elemente im Koordinatenbereich in derselben Beziehung wie im Zielfenster. Listen sortiert die Elemente in einer absteigenden Liste, die im AccScope-Fenster linksbündig ausgerichtet ist und die Listenreihenfolge entspricht der Aktivierreihenfolge oder Lesereihenfolge.
- Wählen Sie eine Option aus Bilder anzeigen, um zu steuern, wann die einfachen Rechtecke für Bildelemente durch das tatsächliche Bild ersetzt werden (oder einen kleinen Viewport dieses Bilds, da die Rechtecke oft kleiner als das tatsächliche Bild sind). Der Standardwert ist Beim Daraufzeigen, wodurch das Bild angezeigt wird, wenn Sie in AccScope navigieren und mit der Maus auf das Rechteck für ein Bildelement zeigen. Alternative Optionen sind immer oder nie.
- Wählen Sie QuickInfo anzeigen aus, um grundlegende Elementinformationen anzuzeigen, wenn Sie mit der Maus auf ein Element in der AccScope-Visualisierung zeigen. Wenn der Elementmodus Blatt-Steuerelement oder Textmuster ist, sind die Informationen, die in der QuickInfo angezeigt werden, die Eigenschaften mit der Benutzeroberflächenautomatisierung auf höchster Prioritätsebene. Wenn der Elementmodus die Sprachausgabe ist, enthält die Info den Text, den die Sprachausgabe für das Element lesen würde.
- Wählen Sie Zahlen anzeigen aus, um Sequenznummern anzuzeigen, welche die Renderreihenfolge des Steuerelements im Layout angeben. Das Zahlenschema basiert auf der Einstellung für den Elementmodus:
- Blattsteuerelement: Die Zahlen geben die Reihenfolge an, in der Blattsteuerelemente in der Struktur der Benutzeroberflächenautomatisierung angezeigt werden.
- Textmuster: Die Zahlen geben die Reihenfolge an, in der Textbereiche in einem Dokumentbereich angezeigt werden.
- Sprachausgabe: Die Nummer gibt die Reihenfolge an, in der die Elemente in der Elementnavigation der Sprachausgabe navigiert werden.
Unter dem Bezeichnungsfenster finden Sie eine Dropdownliste, in der alle HWND-Fenster aufgelistet sind, die derzeit im System aktiv sind. Der Text für jedes Fenster, der in der Dropdownliste angezeigt wird, ist der Fenstertitel und eine Hex-Fenster-ID in eckigen Klammern. Wählen Sie eines dieser Elemente aus, um das Zielfenster zu ändern, für das AccScope-Berichterstellung eingestellt ist. Sie können dasselbe Element erneut auswählen, um das gleiche Verhalten wie eine explizite Aktualisierung zu erhalten.
Die Abbildung unterhalb ist ein Screenshot der AccScope-Visualisierung. Dieser spezielle Screenshot zeigt das AccScope-Tool, welches das Fenster der obersten Ebene für die XAML-Beispielausgabe für die Barrierefreiheit anzeigt, die als App auf demselben Computer ausgeführt wird. Dieser Screenshot zeigt den Standardelementmodus Leaf Control und den Wert Visuell für Layout.
Beachten Sie, wie diese Visualisierung die Steuerelemente im ungefähren Koordinatenbereich darstellt, den Sie in der App sehen. Anstatt Ihnen jedoch die visuellen XAML-Elemente oder den vollständigen Text von Textsteuerelementen anzuzeigen, werden die Werte der Eigenschaft Name angezeigt, die aus jedem Steuerelementelement stammen, und zwar mithilfe der Benutzeroberflächenautomatisierung.
Zusätzlich zu den zuvor beschriebenen Menüoptionen können Sie auch diese Techniken verwenden:
- Klicken Sie bei Visualisierungen in Visuell oder in Liste auf das Rechteck eines beliebigen Elements, um ein UIA-Eigenschaften-Popup anzuzeigen. Dadurch werden eine Reihe der wichtigen Benutzeroberflächenautomatisierungseigenschaften für dieses Element aufgelistet, einschließlich der IUIAutomationElement-Standardeigenschaften und anderer Informationen, z. B. ARIA-Werte und einer Anbieterbeschreibung.
- Klicken Sie mit der rechten Maustaste bei den Visualisierungen auf das Rechteck eines Elements in Visuell oder Liste, um ein Kontextmenü für die Ausübung der vom Element unterstützten Muster anzuzeigen. Wenn beispielsweise ein Element InvokePattern unterstützt, enthält das Kontextmenü ein Element für Invoke. Wählen Sie dieses Element aus, und die entsprechende Muster-API wird in der entsprechenden App ausgeführt. AccScope unterstützt dieses Feature für die folgenden Muster: Invoke, ExpandCollapse, Toggle, SelectionItem, ScrollItem.
- Passen Sie den Schieberegler für Transparenz an, um die Deckkraft/Transparenz des AccScope-Fensters zu ändern. Standardmäßig wird sie als Deckkraft von 100% angezeigt. Das teilweise transparente Fenster kann hilfreich sein, um die Teile des Zielfensters über die AccScope-Benutzeroberfläche zu sehen, während der Always On Top-Modus verwendet wird.
- Wenn sie angezeigt werden, verwenden Sie die horizontalen und vertikalen Bildlaufleisten, um die Ansichtsmitte der Visualisierung zu ändern. Dies ist nützlich, wenn Sie die Option Visuelles Layout, aber nicht die Option Vollbildansicht verwenden, während das AccScope-Fenster im Vergleich zum Zielfenster klein bleibt.
Das Szenario der Sprachausgabe ist der wichtigste Aspekt, der beim Verwenden von AccScope getestet werden soll. Dies ist speziell für die Visualisierung der grundlegenden Navigation der Sprachausgabeelemente gedacht, wenn sie auf Ihre App angewendet wird.
Verwenden Sie die folgenden AccScope-Konfigurationsoptionen, um das Sprachausgabeszenario zu testen:
- Elementmodus: Sprachausgabe
- Layout: Visuell
- Layoutoptionen: QuickInfo anzeigen und Zahlen anzeigen beide sind ausgewählt
Hier sind einige bestimmte Bereiche Ihrer App, die für das Sprachausgabeszenario getestet werden sollen:
- Elementreihenfolge: Stellen Sie sicher, dass die Reihenfolge, in der die Sprachausgabe Ihre Steuerelemente liest, entsprechend den Zahlen (grünen Kreisen), die in den Visualisierungen angezeigt werden, korrekt ist. Wenn Elemente nicht in der Reihenfolge liegen, in der Sie das Lesen erwarten, ändern Sie die UI-Struktur der App und die resultierende Struktur der Benutzeroberflächenautomatisierung, und testen Sie es erneut, bis Sie überprüft haben, dass Ihre Elemente in der erwarteten Lesereihenfolge sind.
- Gesprochener Text: Bewegen Sie die Maus innerhalb der Visualisierung und zeigen Sie mit der Maus auf jedes Elementrechteck, um die QuickInfos für jedes Element anzuzeigen. Im Sprachausgabemodus zeigen die QuickInfos eine Texteingabe der Sprachausgabe an, die buchstäblich den Text darstellt, den die Sprachausgabe liest. In der Regel besteht dieser Text aus dem Namen und dem Steuerelementtyp. Stellen Sie sicher, dass dies die richtigen Informationen für jedes Steuerelement in Ihrer Benutzeroberfläche sind. Wenn Informationen falsch sind, ändern Sie die Eigenschaften der Benutzeroberflächenautomatisierung durch die von Ihrem jeweiligen Benutzeroberflächenframework aktivierten Techniken, um dies zu tun. (Wenn der Steuerelementtyp unerwartet ist, müssen Sie möglicherweise ein anderes Steuerelement verwenden, da dies häufig ausschließlich von den Steuerelementimplementierungen eines Benutzeroberflächenframeworks gesteuert wird.) Testen Sie dann erneut, und stellen Sie sicher, dass der Text der Sprachausgabe korrekt ist.
- Elementlayout: Überprüfen Sie die einzelnen Fälle:
- Stellen Sie sicher, dass redundante Elemente von der Sprachausgabe nicht verfügbar gemacht werden. Ein Beispiel für ein redundantes Element ist das Bewertungssteuerelement in jedem Windows Store-Kachelelement.
- Stellen Sie sicher, dass wichtige Elemente (Elemente, die der Benutzer für wichtige Aufgaben in der App benötigt) jeweils in der Elementnavigation der Sprachausgabe angezeigt werden.
- Wenn Sie das Visuelle Layout verwenden und ein Element fehlt, da Steuerelemente sich gegenseitig überlappen, wechseln Sie zum Listen-Layout, um die von der Sprachausgabe gemeldete Sequenz anzuzeigen.
- Stellen Sie sicher, dass die Struktur der Benutzeroberflächenautomatisierung für Ihre App korrekt und wie erwartet ist.