Zenyth Resource
When it comes to ensuring that a website or digital product is accessible to everyone, no single tool can catch every issue. Each tool we use has its own strengths and focuses on specific types of problems. For example, one tool might be great at checking color contrast, while another might be better at verifying the order in which elements are focused when navigating with a keyboard. However, these tools also have limitations; some issues might be missed or incorrectly flagged by one tool that another could catch.
Because of these strengths and weaknesses, comprehensive accessibility testing requires using a combination of tools. By leveraging multiple tools, we can cross-check findings, cover different aspects of accessibility, and ensure that nothing important slips through the cracks. This multi-tool approach helps us provide a more thorough and accurate assessment of a website's accessibility, ultimately leading to a better experience for all users.
Browser extensions are tools that enhance your web browser, allowing you to test and improve accessibility directly within your browsing environment.
The ARC Toolkit is a powerful accessibility tool designed to help developers and quality assurance testers identify and address accessibility issues in web pages. One of its standout features is the ability to focus testing on a specific portion of a page. By limiting the scope to just a particular node in the DOM (Document Object Model), you can concentrate on the part of the page you're currently working on, saving time by filtering out irrelevant results.
This toolkit is invaluable for testing accessibility before going live, as it allows you to work on a local version of the page and see how it performs. The ARC Toolkit integrates seamlessly with Chrome’s Developer Tools, enabling you to quickly locate specific code and experiment with how to correct any issues within your environment.
The ARC Toolkit supports a wide range of accessibility standards, including WCAG 2.0, WCAG 2.1, WCAG 2.2, EN 301 549, and Section 508. It is designed to complement both automated and manual testing processes, simplifying repetitive tasks and helping you interactively explore accessibility features and problems.
When launched from Developer Tools, the ARC Toolkit provides a panel with a set of tests that display results both in the panel and directly on the page. You can toggle each test on or off to isolate specific types of issues, making it easier to pinpoint and address problems. Additionally, issues can be selected and examined directly in the Elements panel. This tool also provides “Alerts” and “Best Practices” that may or may not reflect actual accessibility issues. It is worth noting that this tool does produce some false positives, particularly related to element nesting or layering.
The toolkit runs entirely locally within Chrome, meaning it can evaluate any page you can browse to, including those in iframes. For pages still in development and not yet live, you can enable the option to "Allow access to file URLs" to evaluate them.
As the ARC Toolkit is actively used by the TPGi team, it benefits from frequent updates, ensuring that the rules and features are continually refined and developed to meet the latest accessibility standards.
Our team leverages the ARC Toolkit in several key ways to ensure that web pages meet accessibility standards:
Tab Order and Focus Visibility: We utilize the toolkit to identify the tab order of interactive elements on the page. This is essential for ensuring that users who navigate via keyboard can do so in a logical and intuitive order. The ARC Toolkit also helps us check for visible focus indicators, which are crucial for users relying on keyboard navigation.
Axe DevTools helps us to identify and address potential issues throughout the development cycle. Here’s how we effectively use this tool:
In summary, while axe DevTools is a powerful and essential part of our accessibility toolkit, we recognize its limitations and use it in conjunction with other methods to deliver thoroughly accessible websites. The available advanced features like IGT offer additional support for teams that require more guidance.
Stylus is a versatile browser extension that allows you to apply custom CSS styles to webpages. It's particularly useful for enforcing text spacing requirements when other tools, like ARC Toolkit, do not fully support these functions.
Bookmarklets are small scripts saved as bookmarks that offer quick, in-browser accessibility testing and enhancements, easily activated directly from your browser.
ANDI (Accessible Name & Description Inspector) is a powerful, free accessibility testing tool that is easy to use and integrates well into the web development workflow. To install ANDI, you simply need to bookmark or drag the ANDI link to your browser's bookmarks bar, enabling quick access without any complex setup.
ANDI offers a range of features to help developers identify and address accessibility issues. Key features include visual highlights of focusable and interactive elements, detailed information on element accessibility, and modules for specific accessibility areas like links, tables, and hidden content. The tool is designed to work alongside screen readers and other developer tools, providing alerts categorized by severity to streamline the remediation process.
ANDI’s interface is user-friendly, with advanced settings and hotkeys to make navigation efficient. Although it doesn’t support dynamic content or Shadow DOM, ANDI’s ability to provide real-time feedback and detailed analysis makes it an invaluable resource for ensuring web content meets accessibility standards.
The Focus Style Bookmarklet applies highly visible keyboard focus indicators, aiding in manual keyboard testing, especially on pages with poor or nonexistent focus styles. This tool is invaluable for tracking focus on websites that lack sufficient focus indicators
The H123 Bookmarklet creates a quick list of all headings on a page, allowing you to assess the structure and ensure that heading levels are used appropriately. This is a critical tool for screen reader navigation.
The Target Size Bookmarklet helps identify overlapping elements by their tap size, ensuring compliance with WCAG 2.2 guidelines. This is crucial for touch devices where tap targets must be adequately spaced.
Ensuring proper color contrast is a critical aspect of web accessibility, as it directly impacts the readability of text and the visibility of interactive elements. While automated tools can identify some contrast issues, they have limitations, particularly when it comes to complex design elements like text over images or layered content. These situations often result in false positives or, conversely, the issue may not be detected at all. Moreover, automated tools typically do not cover contrast requirements for non-text elements such as images, icons, button borders, backgrounds, and other visual indicators of interactivity or state changes.
This tool assists in designing buttons that are both visually appealing and accessible. By adjusting color contrast for button text and backgrounds, the Accessible Contrast Button Generator ensures that buttons are not only compliant with WCAG standards but also easy to distinguish and interact with, which is vital for users with visual impairments.
The Eightshapes Contrast Grid allows us to test and compare multiple foreground and background color combinations simultaneously. This tool is especially useful for ensuring that all text elements across a website maintain the necessary contrast levels, regardless of the color scheme being used. It is also effective in assessing the contrast of non-text elements, such as icons and graphical buttons, which are crucial for indicating interactivity or the state of an element.
The TPGI Colour Contrast Analyzer is an essential tool for checking the contrast ratio between foreground and background colors. It helps ensure that text is readable across different backgrounds and meets the WCAG (Web Content Accessibility Guidelines) standards. This tool is particularly useful for verifying the contrast of text over solid backgrounds but can also be applied to more complex scenarios with careful consideration.
Assistive technology (AT) is vital in accessibility conformance testing, providing insights into how users with disabilities interact with digital content. Tools like screen readers, magnifiers, and voice input software are used to simulate user experiences and ensure websites and applications are accessible and usable. Testing with default AT settings mirrors the typical user experience, helping to verify that content is accessible through keyboard commands and properly announced by screen readers. Integrating AT into testing helps identify accessibility barriers that automated tools might miss, ensuring true accessibility for all users.
JAWS (Job Access With Speech) is a premier screen reader for the Windows operating system, developed by Freedom Scientific. It has long been the industry standard for screen readers, offering a rich set of features that make it essential for users who are blind or visually impaired. However, it is also one of the more expensive screen readers available, which impacts its usage across different regions.
Comprehensive Testing Approach: Due to the high cost of JAWS and its varied usage across different regions, we complement our JAWS testing with other screen readers, such as NVDA. This strategy ensures that our products are accessible to users who may not have access to JAWS due to financial constraints. By using a combination of screen readers, we can deliver a more inclusive and accessible digital experience for all users.
NVDA (NonVisual Desktop Access) is a vital tool in our accessibility testing process, offering robust features that ensure our digital products are accessible to users who rely on screen readers. Here’s how we effectively use NVDA in our workflow:
Real-World User Simulation: By using NVDA in its default configuration, we replicate the experience of real-world users. This approach helps us identify potential accessibility barriers that might not be evident during automated testing or when using customized settings, ensuring that our testing reflects the true user experience.
VoiceOver is a critical tool in our accessibility testing process, particularly for evaluating native mobile applications. Given that many apps are now built using frameworks that allow a single code base to deploy on both iOS and Android, VoiceOver testing is essential because each operating system exposes different accessibility gaps. Here’s how we leverage VoiceOver across various platforms:
Manual testing is a crucial part of the accessibility assessment process, accounting for about 70% of the evaluation. It allows for a detailed examination of aspects that require human judgment, such as keyboard navigation, focus management, and ARIA roles. The process includes rigorous keyboard testing to ensure logical focus order and visibility, in-depth code reviews for HTML and CSS adherence, and the use of browser developer tools for inspecting components and focus tracking. Combined with automated tools, this approach helps identify and address a wide range of accessibility issues, ensuring an inclusive experience for all users.
Browser developer tools offer a range of functions that are invaluable for manual accessibility testing. Some of the key tools we use include:
Focus Tracking Using Console Commands: One of the advanced techniques we employ during manual testing is focus tracking using console commands. By adding a live expression in the console, such as document.activeElement, we can dynamically monitor where the focus is on the page which is particularly helpful when focus is not visible. The Console tool in browser developer tools allows us to execute these commands and monitor focus in real-time, helping us identify potential focus management issues. This ensures that the user experience is smooth and intuitive for keyboard users, especially during complex interactions and dynamic content changes.
Keyboard testing is essential for ensuring that all interactive elements on a page are accessible without the use of a mouse. This is particularly important for users who rely on keyboard navigation, such as those using screen readers or those with motor impairments. During keyboard testing, we:
Assess Focus Management: We evaluate how well focus is managed during dynamic content updates, ensuring that focus remains in the correct place or is appropriately redirected as the page content changes.
Manual code reviews are critical for identifying potential accessibility issues that might not be flagged by automated tools. Our code review process includes:
ARIA and Semantics: We verify that ARIA roles, states, and properties are used correctly to enhance the accessibility of custom components. We also ensure that the use of ARIA does not override or conflict with native HTML semantics.
Console commands are a powerful tool in accessibility testing, offering developers direct control over a webpage's code and behavior. They enable tasks like tracking active elements, simulating user interactions, and testing dynamic content updates. This control is invaluable for verifying focus management, ARIA role implementation, and debugging complex interactions. Incorporating console commands into your testing routine enhances your ability to detect and resolve subtle accessibility issues, leading to a more robust and user-friendly experience for all users.
Purpose: This command is useful for monitoring when a webpage has fully loaded. It helps you determine if any change in keyboard focus or other behaviors are the result of the page reloading, which is crucial for debugging focus management and ensuring a smooth user experience.
Usage:
window.addEventListener("load", (event) => {
console.log("page is fully loaded");
});
Tip: Implement this command in your testing to log a message when the page has completely loaded. By correlating this log with any unexpected focus shifts or content changes, you can determine whether these are caused by the page reload itself or by other scripts and interactions on the page. This insight is particularly valuable for ensuring that focus remains consistent and predictable during page load events, which is essential for users relying on keyboard navigation.
Purpose: These commands allow you to simulate dynamic content changes over time, which is crucial for testing whether screen readers correctly announce these updates. By introducing delays, you can mimic real-world scenarios where content is updated asynchronously, ensuring that all users receive timely and accurate feedback.
Usage:
setTimeout(function() {
document.querySelector('selector').textContent = 'New content';
}, 3000);
Tip: This example simulates a content update after 3 seconds. You can adjust the timing and content as needed to test different scenarios. This is particularly useful for validating that screen readers announce changes to dynamic content, such as live updates or AJAX-driven changes.
Purpose: This command helps you identify all focusable elements on a page, ensuring they are properly accessible through keyboard navigation. It's an effective way to audit the interactive elements on your site and verify that they can be navigated using only the keyboard.
Usage:
document.querySelectorAll('a[href], button, input, select, textarea, [tabindex]');
Tip: This command lists all focusable elements on the page, which you can then inspect for accessibility issues. For example, you can check if any elements are missing tabindex attributes or if there are elements that should not be focusable but are, helping you refine the accessibility of your site’s navigation.
Purpose: This command is essential for monitoring which element is currently in focus on a webpage. It's particularly useful for verifying that keyboard navigation and focus management are functioning correctly. By tracking the active element, you can ensure that users who rely on keyboard navigation or screen readers are able to interact with your content as intended.
Usage:
console.log(document.activeElement);
Tip: You can use this command in conjunction with a live expression in the console to continuously monitor focus changes as you navigate through the page using the keyboard. This real-time feedback is invaluable for identifying focus-related issues, such as unexpected focus shifts or missing focus indicators.
To ensure our digital products are accessible to users with low vision, we employ various tools and techniques, including browser zoom, system/device zoom, and specialized software like ZoomText Magnifier/Reader. Each of these methods plays a critical role in verifying that content remains usable and visually accessible at different magnification levels.
Browser zoom is a built-in feature in all major web browsers that allows users to increase or decrease the size of web content. It is an essential tool for users with low vision who may need to enlarge text and images to make them easier to read. Our team tests websites at various zoom levels, typically up to 400%, to ensure that content reflows properly, images scale without loss of clarity, and interactive elements remain accessible and functional. Testing browser zoom helps us identify potential issues with layout, content overlap, and readability that might not be apparent at the default zoom level.
System or device zoom is a feature available in operating systems like Windows and macOS, as well as on mobile devices, that allows users to magnify the entire screen. This is particularly useful for users who need consistent magnification across all applications and not just within a web browser. We test products using system/device zoom to ensure that all aspects of the user interface—whether within an app or the operating system itself—remain accessible. This includes checking that text remains readable, buttons are easily clickable, and that the overall user experience is not compromised at higher magnification levels.
ZoomText Magnifier/Reader is a specialized tool designed specifically for users with low vision. It provides a fully integrated magnification and screen reading experience, offering flexible magnification levels up to 60x. This tool not only magnifies the screen but also enhances contrast, echoes typing, and reads out documents, web pages, and emails. Our team uses ZoomText to simulate the experience of users who rely on high levels of magnification and screen reading. We test how content is displayed and read out by ZoomText, ensuring that it remains clear, accessible, and easy to navigate even at extreme magnification levels.
ZoomText allows for a wide range of magnification options, from 1x to 36x or even up to 60x on certain versions of Windows. The software supports fractional zoom levels (e.g., 1.25x, 1.5x) and custom zoom level configurations, enabling users to fine-tune their experience based on their specific needs. Our testing with ZoomText helps us ensure that users who need this level of magnification can interact with our products effectively.
Ensuring web accessibility requires a combination of tools, techniques, and thorough manual testing to create inclusive digital experiences. Key tools like browser extensions, bookmarklets, and developer tools help identify common issues, while assistive technologies such as VoiceOver, NVDA, and JAWS simulate the experience of users with visual impairments. Manual testing, including detailed keyboard checks and code reviews, is crucial for catching issues that automated tools might miss. Color contrast testing is also critical, ensuring readability and visibility for users with low vision.
By integrating these tools and methods, we ensure that digital products are both conformant with accessibility standards and truly usable by all users.
Are you ready to take the next step towards creating a more inclusive digital space? Contact us today to learn more about our services and how we can help you achieve WCAG 2.2 level AA conformance. Your journey towards digital accessibility starts with Zenyth.