Top Banner
Thank You For Your Participation!
30

Accessibility Testing - Using Asqatasun - Meetup Webinar

Jan 13, 2017

Download

Technology

Keyur Shah
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Accessibility Testing - Using Asqatasun - Meetup Webinar

Thank You For Your Participation!

Page 2: Accessibility Testing - Using Asqatasun - Meetup Webinar

ACCESSIBILITY TESTING & CONTINUOUS INTEGRATION

Keyur ShahDistinguished Member of Technical Staff @ Verizonhttps://www.linkedin.com/in/keyurkshah

Page 3: Accessibility Testing - Using Asqatasun - Meetup Webinar

About Me

■ Author (5 Books)

■ Blogger

■ DevOps Architect

■ Open Source

■ Web & Mobile Performance

■ 20+ years in IT & Management

3

Work-in-progress

http://www.slideshare.net/softwareklinic/presentationshttps://www.linkedin.com/in/keyurkshahhttp://internetmarketing-readme.pricemaniacs.com/

Page 4: Accessibility Testing - Using Asqatasun - Meetup Webinar

AGENDA

• Accessibility Overview & Standards

• Cost of ignorance or non-compliance

• Target Audience: Everyone Engaged in a Project

• Again – how do we leverage Open Source?

• Asqatasun – Accessibility Testing Software

• Selenium Builder

4

Page 5: Accessibility Testing - Using Asqatasun - Meetup Webinar

Accessibilitycoversthespecialneedsofpeoplewithdisabilitiesandhowthatusermayencounterbarriersthatcanbeeliminatedorminimizedbyproperwebdevelopment,assistivetechnology,orunderlyingoperatingsystemsoftwareandhardwareplatform.

Fourmaincategoriesofdisabilities

Visual

Hearing

Cognitive

Mobility

What is Accessibility?

5

Page 6: Accessibility Testing - Using Asqatasun - Meetup Webinar

6

• Screen readers are a common assistive technology, primarily for people with visual impairments. Screen readers provide an audible output of properly programmed elements on a web page / digital documents. They are also the most common form of manual testing.

• According to a non profit accessibility agency called WebAIM, the most popular screen readers range from - JAWS, NVDA and VoiceOver.

• Runs on the Microsoft Windows platform.

• Will work with multiple internet browsers but works best with IE

• Non Visual Desktop Assistant (NVDA)

• Most popular open source screen readers for Windows

• Will work with multiple internet browsers

Apple Voice Over

• Built into Apple Inc.’s Mac OSX and iOS operating systems.

• Works best with Safari

Assistive Technology

Page 7: Accessibility Testing - Using Asqatasun - Meetup Webinar

7

Remediation efforts (one time costs)

Training and education (periodic costs)

Accessibility Assessment(one time costs)

Pre-existing site(add accessibility after site built)

New/Re-design site(build-in accessibility before design)

Tools and integration (one-time & maintenance)

Governance integration (one-time & maintenance)

Quality Assurance (periodic costs)

Remediation (less over time)

Project and Overhead (schedule and costs)

Training and education (periodic costs)

Tools and integration (one-time & maintenance)

Governance integration (one-time & maintenance)

Project and Overhead (schedule and costs)

Quality Assurance (periodic costs)

=

=

=

=

=

[avoid these costs]

[avoid these costs]

Accessibility is less expensive when “built-in”

Note: This slide is from one of the IBM presentations

Page 8: Accessibility Testing - Using Asqatasun - Meetup Webinar

Accessibility costs LESS than NOT doing accessibility

8

Training and education (periodic costs)

Building in accessibility Not doing accessibility

Tools and integration (one-time & maintenance)

Governance integration (one-time & maintenance)

Project and Overhead (schedule and costs)

Law suits (recurring costs J)

Customer loyalty (recurring costs)

Search Optimization (recurring costs)

Reach less customers (lost revenue)

Adaptation for Mobile (recurring costs)

Brand value (recurring costs)

Quality Assurance (periodic costs)

Remediation (less over time)

J lawyers are more expensive than web developersNote: This slide is from one of the IBM presentations

Page 9: Accessibility Testing - Using Asqatasun - Meetup Webinar

Accessibility Tool Capabilities

Accessibility Tool

Built-in Web Crawler

WCAG & Section 508 Standards

Reporting Capabilities

Integrate with Jira

Schedule Scans

Outline Issues &

Remediation

Mobile Accessibility

User Input Automated

Testing

Browser Compatibility

Page 10: Accessibility Testing - Using Asqatasun - Meetup Webinar

W3C Accessibility Demo – Before And After (BAD)

10

https://www.w3.org/WAI/demos/bad/

Page 11: Accessibility Testing - Using Asqatasun - Meetup Webinar

Open Source Options

■ Below are some of the open source options that we tried out for testing Accessibility of Rich Internet Applications

• Quail - http://quailjs.org• AXE-Core - https://github.com/dequelabs/axe-core• Pa11y Command-line - http://pa11y.org

• Pa11y-Dashboard - https://github.com/nature/pa11y-dashboard/• PayPal AATT - https://github.com/paypal/AATT• Achecker - http://achecker.ca/checker/index.php or

https://github.com/inclusive-design/AChecker• Asqatasun - http://asqatasun.org or

https://github.com/Asqatasun/Asqatasun

11

Page 12: Accessibility Testing - Using Asqatasun - Meetup Webinar

https://github.com/nature/pa11y-dashboard/

12

Page 13: Accessibility Testing - Using Asqatasun - Meetup Webinar

https://github.com/paypal/AATT

13

AATT tests web applications regarding conformance to the Web Content Accessibility Guidelines (WCAG) 2.0. Find a list of the WCAG 2.0 rules checked on the HTML CodeSniffer WCAG Standard Summary page. AATT provides an accessibility API and custom web application for HTML CodeSniffer.

Page 14: Accessibility Testing - Using Asqatasun - Meetup Webinar

AChecker – URL Checking Toolhttp://achecker.ca/checker/index.php

14

This tool checks single HTML pages for conformance with accessibility standards to ensure the content can be accessed by everyone. See the Handbook link to the upper right for more about the Web Accessibility Checker.

Page 15: Accessibility Testing - Using Asqatasun - Meetup Webinar

15

Asqatasun is an opensource web site analyzer, used for web accessibility (a11y) and Search Engine Optimization (SEO).

Features• Web Accessibility Assessment (RGAA 3, AccessiWeb, WCAG)

• scan a whole site for a11y issues (crawler included)• scan a given page, and manually fulfill the audit to produce report• scan offline file (e.g. template being created but not online yet)• scan a user-workflow like site registration, form completion or e-

commerce checkout with Asqatasun scenarios.• SEO Measurement

• run fully automated tests to track SEO issues• scan zillions of pages• create your own tests

forked3.x.x 4.x.x

Page 16: Accessibility Testing - Using Asqatasun - Meetup Webinar

16

Give it a quick try using Docker

Run it on server – Test or Production Environment

• Install docker on your system• Pull asqatasun docker image• Launch the container• Test asqatasun and its features• Ready for operationalizing it?

• Spawn a Linux VM• Install asqatasun pre-requisites• Download the latest tarball• Run the installer• Train the team & ready to use

Page 17: Accessibility Testing - Using Asqatasun - Meetup Webinar

■ Typical usages for Page audit –One or Many

■ the typical audit you run on a page to have insights about its level of accessibility (be it a quick view, or an in-depth study with Assisted Audit)

■ Typical usages for Scenario audit –Authenticated Pages as well

■ automatically measure a form that is split in several pages

■ assess the page given by a search result

■ audit a web application (full JS, AngularJS, ExtJS...)

■ measure different states of a very same page

17

Typical usages for Site audit - CRAWL

have a global overview the accessibility level of an entire website (say 50'000 pages)

identify pages or parts of a site with excessive accessibility issues

Typical usages for Offline file audit

A developer is creating a template which is still on its machine (not yet on the webserver), and wants to have an early statement of accessibility

User wants to audit an intranet page (not connected to the internet). Just save the page and send it as offline file to Asqatasun

4 types of Audits

Page 18: Accessibility Testing - Using Asqatasun - Meetup Webinar

Selenium Builder & Asqatasun

18

http://seleniumbuilder.github.io/se-builder/

Scripts can be saved to a Builder-specific JSON format or exported as simple Java or Python code.

The JSON format can also be played back by a standalone interpreter, allowing you to keep your scripts in an easily editable format.

Page 19: Accessibility Testing - Using Asqatasun - Meetup Webinar

Install Selenium Builder

19

1. Have a Firefox and download SeBuilder extension2. Record your scenario (Selenium 2 format)3. Replay locally your scenario to verify it works4. Upload the scenario to Asqatasun5. Run the scenario audit

Page 20: Accessibility Testing - Using Asqatasun - Meetup Webinar

Workflow for Test Recording & Execution

20

Selenium Builder

Record the web

flow

Export JSON

Asqatasun Web UI

Create a contract / project

Create a new

Scenario to test

.json file

Execute the

scenario

Test Results

Feed .json file

Page 21: Accessibility Testing - Using Asqatasun - Meetup Webinar

Launch Selenium Builder

■ Tools > Web Developer >

■ Lanch Selenium Builder

■ Enter the URL for which you want to start recording the flow

21

Page 22: Accessibility Testing - Using Asqatasun - Meetup Webinar

Selenium Builder – Recording the flow

22

Page 23: Accessibility Testing - Using Asqatasun - Meetup Webinar

Export Selenium Script as JSON

■ File > Export

23

Page 24: Accessibility Testing - Using Asqatasun - Meetup Webinar

Accessibility Testing – UI & Dashboard

24

Page 25: Accessibility Testing - Using Asqatasun - Meetup Webinar

Asqatasun Demo – Accessibility Testing

25

Page 26: Accessibility Testing - Using Asqatasun - Meetup Webinar

Continuous Integration – Next Level

26

CLI CLI + Web App

Point to the same instance of MySql DB

Page 27: Accessibility Testing - Using Asqatasun - Meetup Webinar

Jenkins Plugin

27

Page 28: Accessibility Testing - Using Asqatasun - Meetup Webinar

Runner

■ Tanaguru / Asqatasun Runner

■ In Jenkins configuration

28

Page 29: Accessibility Testing - Using Asqatasun - Meetup Webinar

Scenario

■ You can paste the scenario JSON that you recorded using Selenium Builder directly in the Tanaguru / Asqatasun runner configuration for your job in Jenkins and select the referential and level

29

Page 30: Accessibility Testing - Using Asqatasun - Meetup Webinar

Thank you.

30