Testing For Compliance

Testing for Compliance:

Where to Begin?

Slides available at https://tinyurl.com/CWD-accessibility

Phil Williammee - psw58@cornell.edu




    Accountability for Testing

    Testing Should Be an Integral Part of the Development Life Cycle

    • WCAG 2.0 Level A and AA
    • Testing for accessibility must be taken seriously throughout all of the major stages of the development process
    • Do testing early on in order to avoid mistakes

    When to Test?

    • The Planning and Design Phase - notes on color choices, alternative text for images, link text, visual focus colors, user interactions and keyboard functionality, etc.
    • The Build/Creation Phase - Automated and Manual Testing
    • The Testing Phase - A process to validate accessibility requirements, any findings should be reported in detail.



    • Your checklist should be based on your role and scope.
    • How could your work affect accessibility on your site?

    Full checklist:

    Checklists Considerations for Content Editors

    • Semantics and Structure (Headings, lists, menus, forms, etc.)
    • Readability (Order)
    • Images (Alt attributes)
    • Tables (Data tables, layout tables)

    Checklists Considerations for Developers

    • Keyboard and Touchscreen Navigation (Focus, Order, Keyboard Only)
    • Semantics and Structure (Structure, information, and relationships)
    • Form labels
    • Form Errors (Descriptions, submission, user Input)
    • Custom Controls (Names, and Roles...Native HTML?)
    • Context Changes (Notify users of Context change)
    • Timing (Scrolling, moving, blinking, dynamic or auto-updating content...Slideshows)

    Checklists Considerations for Designers

    • Page Title
    • Headings
    • Navigation (Skip links, Reading Order)
    • Links (Link text, and color contrast)
    • Color/Contrast
    • Images (Informative, decorative, images of text, logos)
    • Visibility
    • Order and location

    WA Site Tester - Full Site Checklist

    https://webaim.org/standards/wcag/checklist or CWD-Checklist

    The Tester should have their site registered in SiteImprove, a full-featured web accessibility management service, available to all Cornell faculty and staff.



    Testing Scope

    Define the Scope of Testing

    • Are a few pages going to be evaluated, or an entire web application?
    • Will the evaluation stick to informational content or will it also cover Forms?
    • Which pages are going to be evaluated?
    • How can the best pages be selected to get the most out of the evaluation process?

    Considerations and Prioritization for Defining the Scope.

    Will the project effect:

    • Templates
    • Navigational menus.
    • Payment Forms, Legal Contract, such as Forms.
    • Images, Forms, Tables, Frames, Interface Elements relying on client-side scripting, and Media.
    • Anything that gets a lot of traffic.

    Testing Routine

    A testing methodology is require to achieve a consistent process and consistent results.

    Your team should have an agreed upon testing process, similar to the one outlined below.

    Testing Routine - Process

    1. Determine the Scope for Testing
    2. Conduct testing - Evaluation
      1. Automated Tests
        1. SiteImprove
        2. Wave
        3. Color Contrast Checker
      2. Manual Tests
        1. Input: Keyboard
        2. Visual Presentation
        3. Alternative Text
        4. Audio and Video
        5. Semantics and Document Structure
        6. Forms
        7. Dynamic Content
        8. Custom Widgets
    3. Document All Findings in an Accessibility Report Format
    4. Plan for Remediation
    5. Conduct Regression Testing

    Conduct Testing

    About a third of accessibility problems can be found through automated testing.

    Never consider automated testing to be sufficient to find all accessibility problems in a page or application.

    Automated Tools

    1. Siteimprove and Siteimprove Chrome Plugin (Automated)
    2. WAVE for FF and Chrome Color Contrast Analyzer Chrome plugin
    3. Colorzilla
    4. Web Developer
    5. Color Contrast Analyzer Plugin

    Testing Demo

    Overview - https://www.ww3.org/WAI/demos/bad/

    Bad - https://www.w3.org/WAI/demos/bad/before/home.html

    Fixed - https://www.w3.org/WAI/demos/bad/after/home.html

    Content Entry - http://blogs.cornell.edu/psw58/

    Manual Testing - Keyboard Accessibility

    • Tab Focus ability and order
    • Keyboard Functionality (with and without screen reader)
    • Visual Focus Indicator
    • Effective focus managements (forms, dialogs, dynamic content)
    • Keyboard Traps

    Manual Testing - Other

    • Test for Meaning Conveyed with Color
    • Test Alt Text Quality
    • Test Video/Audio Accessibility
    • Test for Landmarks
    • Test Link Text Quality
    • Test Form Labels and Instructions
    • Test Form Validation
    • Testing Custom Widgets

    Bugs/Issues Management

    Testers are expected to report the nature of each accessibility issue found, recommendations for fixing the issue, and the impact it has on users.

    These issues should be recorded in a report.

    Example template

    Writing Effective Accessibility Bug Tickets

    In order for issues to be remediated, reports that are filed need to be well written.  This is especially critical for accessibility issues.

    Vendors or developers should be able to understand the issues described in the report, even if they are unfamiliar with your Site.

    Bug Report

    Your Bug Report Should Include:

    • Descriptive Title
    • Description of Issues
    • Expected Results
    • Platform and AT
    • Impact/Severity
    • Steps to Reproduce
    • Visual or Video
    • Remediation

    Regression Testing

    • After issues have been fixed, regression testing and monitoring should be conducted.
    • Common methods of regression testing include rerunning previously run tests


    Testing for accessibility is valuable in ensuring that users with disabilities can effectively use your websites.

    • Accessibility testing plays a key part throughout the entire development life cycle:
      1. Tests should be written during the planning phase based on accessibility requirements.
      2. Developers should conduct automated tests, keyboard accessibility tests, and screen reader testing of custom widgets during the build/creation phase.
      3. Comprehensive manual testing and QA should be performed to identify accessibility issues missed during the previous phases of development.
    • Everyone has a role in creating accessible web content.
    • A methodology should be established established in order for the testing process to be effective, such as:
      1. Define the scope of the evaluation
      2. Conduct automated tests and manual tests
      3. Document all findings in a detailed report
      4. Plan for remediation based on findings from tests>
      5. Conduct regression testing to evaluate fixes
    • Automated testing can be used to quickly identify issues.
    • Manual testing needs to be conducted to validate automated tests and to discover issues that automated tests cannot identify.
    • Bug Reports for accessibility issues need to be composed in a format that allows designers, developers, and other stakeholders to successfully address accessibility issues.
    • Issues should be prioritized based on factors like business value, risk, visibility of issues, and severity of issues.
    • Regression testing and monitoring should be conducted to identify issues that may emerge from previous remediation efforts.




    Join the discussion at: https://www.yammer.com/cornell.edu/#/threads/inGroup?type=in_group&feedId=15523147&view=all