A semiautomatic approach for testing the accessibility of web pages
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 94 | |
Author | ||
License | CC Attribution 4.0 International: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/45597 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
FrOSCon 201980 / 94
7
10
12
14
15
16
17
20
22
23
26
27
28
29
30
31
32
33
36
37
38
39
41
44
45
48
52
53
55
56
57
58
60
61
62
64
66
67
74
76
77
78
79
81
83
84
93
00:00
Statistical hypothesis testingHome pageFreewareOpen sourceTrailCommitment schemeMereologyWeb pageText editorRight angleXMLUMLComputer animationLecture/ConferenceMeeting/Interview
00:35
Statistical hypothesis testingHome pageWorld Wide Web ConsortiumSoftware developerElectronic mailing listWeb pageWordComputer animationLecture/Conference
01:11
MereologyGraph coloringWeb pageComplete metric spaceComputer animation
01:54
Open setFreewareWorld Wide Web ConsortiumHome pageStatistical hypothesis testingFile formatRule of inferenceAutomationElectronic program guideOntologyPerformance appraisalSystem callWeb serviceMoment (mathematics)Standard deviationUser interfaceWeb pageWorld Wide Web ConsortiumPlug-in (computing)OntologyMereologyStatistical hypothesis testingInterpreter (computing)Statistical hypothesis testingContent (media)Rule of inferenceMultiplication signTask (computing)Cartesian coordinate systemInternetworkingHeegaard splittingFile formatDescriptive statisticsRepository (publishing)Conformal mapMixed realityRevision controlAuthoring systemComputer animation
07:14
OntologyPerformance appraisalTask (computing)Annulus (mathematics)Statistical hypothesis testingColor managementRule of inferenceTemplate (C++)outputExpected valueMountain passElement (mathematics)Attribute grammarInterface (computing)Component-based software engineeringElement (mathematics)Instance (computer science)Descriptive statisticsStatistical hypothesis testingTouchscreenRule of inferenceUser interfaceWebsiteWeb pageHome pageMoment (mathematics)Task (computing)RobotCartesian coordinate systemJava appletOntology
09:57
Programmable read-only memoryRule of inferenceElement (mathematics)outputExpected valueAttribute grammarHydraulic jumpComponent-based software engineeringInterface (computing)Demo (music)outputTranslation (relic)Element (mathematics)Descriptive statisticsWeb pageMedical imagingRule of inferenceType theoryTouchscreenPersonal digital assistantWeb browserCASE <Informatik>Condition numberCodeQuicksortNetwork topologyComputer animation
11:49
Uniform resource locatorPerformance appraisalHome pageVideoconferencingPoint cloudStatistical hypothesis testingTask (computing)Expected valueWeb pageNormal (geometry)Moment (mathematics)Home pageElement (mathematics)Statistical hypothesis testingPerformance appraisalWorld Wide Web ConsortiumUniverse (mathematics)Computer animation
12:26
Execution unitUniform resource locatorVideoconferencingPoint cloudPerformance appraisalHome pageStatistical hypothesis testingTask (computing)Expected valueMenu (computing)Time zoneContent management systemWebsiteEvent horizonWeb pageOcean currentMoment (mathematics)Universe (mathematics)Multiplication signHome pageEmailElement (mathematics)Mathematical optimizationSoftware bugStatistical hypothesis testingRule of inferenceComputer animation
14:37
Content management systemWebsiteEvent horizonTraffic reportingWeb pageElement (mathematics)Projective planePerformance appraisalModal logicSoftware developerMereologyPatch (Unix)ResultantWebsiteFunction (mathematics)Moment (mathematics)Real numberContent management systemHome pageComplete metric spaceCanadian Mathematical SocietyInteractive televisionUser interfaceRobotWeb serviceoutputInformationMultiplicationFluid staticsNormal (geometry)Artistic renderingWeb browserExtension (kinesiology)BootingFile formatWorld Wide Web ConsortiumDifferent (Kate Ryan album)INTEGRALRevision controlInstance (computer science)NeuroinformatikServer (computing)Rule of inferenceScripting languagePoint (geometry)Medical imagingComputer animation
21:48
Statistical hypothesis testingMultiplication signStatistical hypothesis testingRule of inferenceSoftware developerSoftware bugMereologyCASE <Informatik>SpacetimeProjective planeComputer architectureLecture/Conference
23:37
Content management systemWebsiteEvent horizonSoftware developerMoment (mathematics)MereologyHypothesisStudent's t-testProjective planeInstance (computer science)Multiplication signComputer animationLecture/Conference
24:41
Content management systemWebsiteEvent horizonTraffic reportingPerformance appraisalRobotMultiplication signResultantSoftware developerWeb serviceHome pageWeb applicationRule of inferenceMoment (mathematics)Keyboard shortcutDescriptive statisticsWebsiteLevel (video gaming)Contrast (vision)Configuration spaceMorley's categoricity theoremHidden Markov modelJava appletRevision controlFunction (mathematics)Data structure1 (number)TelecommunicationDigitale VideotechnikMeasurementInterpreter (computing)Content (media)Arithmetic meanWorld Wide Web ConsortiumConformal mapWeb crawlerComputer animationLecture/Conference
28:52
FreewareOpen sourceEvent horizonXMLComputer animation
Transcript: English(auto-generated)
00:07
So hello everyone We have now the second talk in the science meet first commit science track and I'm introduced to you Yes, Pelseter from the University of Bremen, right? Yeah
00:23
He's right now doing his PhD and the topic he is talking today is part of his Of his PhD and he talks about the automatic approach for testing the accessibility of web pages Surely an important issue Nevertheless, maybe one issue not on the top list of the developers. So
00:44
It's your stage. Yeah. Thank you Okay. Yeah long title But It describes the thing I want to talk about its best
01:02
first some Mmm, what's about accessibility about of web pages that most people think About blind people if they hear this topic like that's Not the truth the complete truth
01:22
Blind people are only one part of Accessibility an important part nevertheless, but That there are many more impairments which can affect the way you can use web pages One example about 8% of the male population
01:44
can't see red and green as colors, so that's not too small amount of people and What are
02:01
Standards in this the most important one are the web content accessibility guidelines, which are available in the version 2.1 since last year They are organized Into four principles and perceivable operable operable and understandable and robust
02:25
Which then are split into 13 guidelines and 80 And 78 success criteria which describe it where the various
02:40
Requirements for accessible web pages There are also some supplemental documents and understanding the way content accessibility guidelines which describes It's the intent of the success criteria in Detail and the techniques for web content accessibility guidelines describes how you can implement them
03:08
Testing is Not that easy But I will come to that At later and there are a few other standards for example the
03:22
Authoring tool accessibility guidelines or the accessible rich internet application standards That's If you are interested in that I will give a talk in C 119 this afternoon about these standards where I will
03:44
Talk in detail about them, so if you are interested It's at two o'clock this afternoon And testing And web page for accessibility is quite a quite complex task
04:08
It requires manual work at the moment even there are some browser plugins which you can use to test Some parts
04:20
Some aspects of the accessibility, but not everything and it still requires very Manual work, and it's very time-consuming and the guidelines from the web content accessibility guidelines are also open for interpretation
04:41
There were W3C has Recognized deaths and is currently developing a new standard and accessibility accessibility conformance testing rules Which defines a format?
05:01
For describing accessibility conformance testing rules and first rules using two standards are available at a github repository The Problem is that still a textual description so nothing which you can use
05:24
For automatic tests They are the intent is to provide the tool Implementers a guideline for these things but At the moment there are
05:42
Not very much tools which implement that and the idea which I had is You should automate as much as possible if you test these and For the the steps which require manual work You should guide all the users through these steps
06:04
so that they Can and know exactly what to check for and And I developed as part of my PhD a tool Which is structured like this
06:24
First there is a service which Has an ontology with the rules this and executes the test using selenium I
06:40
Don't know if selenium is if you know selenium and that's a Tool which you can use for testing web user interfaces It's often used To check if an user interface works correctly
07:01
and the service call Use a selenium to do that Provides an user inter of the web user interface is and the real testing is done by a By multiple
07:20
Instances of the of a bot which then executes the selenium tests and and tests the website it Yeah, that the web user interface looks at a moment like this
07:42
It's all in implemented in Java because the Reason and the reason for that is that Apis for using ontologies are only available in Java, so well
08:02
The easy way was to do the rest also in Java If you want to evaluate a web page you simply put the URL here click start and then The tool starts to run analyzes the document and and executes all
08:25
Test it knows and it first determines which Rules are applicable for each element and then executes for each element applicable tests and
08:42
at the end You get some a screen like this this and where you see the task which require manual work and if you then click on the Button you see a screenshot with the element and the question and simply click passed or failed
09:05
it and at the end if when all tests are finished you get an overview about rules for this page many rules are not applicable and Here you see some
09:22
rules which Have passed or are failed and that's it Yeah Okay this shot and
09:42
The description of these accruals looks like this
10:08
So Here this is that's the description when this rule is applicable you Don't need to read this now and in my tool
10:23
The translation looks like this if you put that in sort of code but The rule has three m conditions which And
10:41
The element must match to so that the rule is applicable and in this case it should be a button should be exposed to the accessibility tree and every browser builds an
11:01
additional A tree Of the elements of a web page which is available for so-called assistive technologies for example screen readers and not all elements are exposed to this tree and Yeah, and
11:21
The bat this element should not be an input element with the type image Which yeah And now If we are lucky, yeah, it still runs
11:52
Before the talk I started Evaluation of the FrostCon web page, which is the running
12:01
That's also one Problem, which I'm currently working on it takes very at the moment that testing takes very long Because The problem is a web page has a normal web page has many elements FrostCon web page has
12:21
not so much but For example the start page of you our University has About 2,000 HTML elements and at the moment it takes the tool needs very long to test them all but I Think I will I can cut this time
12:44
So that it takes about Half an hour for such a large page then to test It's still a long time. But if you want to evaluate such a large page manually you will
13:00
You will need longer Because you have to look for each for each element and that for each rule so it the tool will save you time and Yeah, I think the tool also has some problem
13:25
Okay, yeah, that's so far Yeah That's the current status I'm currently working on back fix and optimizations and
13:41
I'm looking for possible participants which Want to Evaluate this tool if it's finished So if you are interested, please write me in mail and I will get back to you vendor Tool is ready
14:00
He Yeah, then Some other talks I Will give two other talks here on the frost con one this afternoon in c119 Which where I will talk about the standards for accessible web pages
14:26
And tomorrow I Will give a talk where I will explain why accessible web pages are also useful for everybody Not only people with impairments
14:42
And Some other advertisement. I'm also a member of the CMS garden, which has also a boot here and We have our own unconference in November so if you want to meet us and learn
15:01
about web content management systems You can come to Eson Attendance is free as here. Yep. Okay questions Yeah
15:25
Yeah, yeah, so you started the Yes, okay, it's you started the scan from a web page
15:41
Yeah, also the possibility to start it from command line. No, it's in able not yet. Okay Maybe I will work on that What you will can do is? to Use the browser extension so you can start it directly from the browser
16:05
But that's Extension is still in development The reason I'm asking is if you could integrate this into your CI pipeline Yeah That would be much more pleasant because you don't have to wait Half an hour or however long it takes on your local computer
16:22
But you can just yet push to the server have it build it at some point. You can leave this web page It's not necessary to leave it open Yeah, but it still has to be running on my local computer no, no, no, it's a web service It will run on a server or on a server
16:41
But if I have that one instance of the page, yeah That's I want to test and locally I want to continue development. It's much easier if yeah Yeah, I have multiple versions. Yeah. No, no, that's a second step the integration in CI pipelines
17:01
Okay, thank you Yeah My question is in which different output formats can you get the Report at the moment on and the question was in which out, okay At the moment you can only get an output for humans
17:25
when the tour is finished as there is a Standard for accessibility evaluation reports in a JSON format that which You will you can get the report then as export so
17:45
as JSON maybe other formats also, but The old standard will be implemented Jason would be quite quite fine. Thank you. Yeah
18:02
Thanks What experience did you already? Get with this tool. So have you run it yourself on various websites or yeah many other projects tried it and Yeah So far the results
18:21
Were that many web patches have some accessibility problems sometimes in Parts which you don't expect for example one of the rules is that Every element must have an accessible name, which is exposed to this
18:42
Assistive technologies and not much web pages have that For all necessary for all elements where it's necessary It's not only a mild Text for images, but also label real labels for by input elements and
19:05
I've seen many examples where you have a visible and we're a label for an input element, but it's not connected with the input
19:20
It in a way which can be recognized by assistive technology Yeah, my question would be whether you have to specify like each page on your website At the moment. Yes. That's also one of the next steps to automate the scan for whole site
19:45
At the moment I see it's the second it's now the second step first get it running for a single document and then look into How you can do it for multiple pages
20:05
Okay, I have one more Does it also work with let's say JavaScript intensive pages that Have only small yes parts and do a lot of rendering based on information that comes
20:21
JavaScript calls it should and that's also one thing which has to be Am tested how it works, maybe you will have to define some Interactions which the tool should do in the background. I don't know if you know selenium
20:45
In the background the bot starts a Firefox Box, um, so JavaScript is supported It in this way but Maybe you will have to
21:03
define Some interactions with the page to get the complete rendering and many JavaScript Based web page user interfaces are really multiple pages, even if it's one page so
21:22
That's also one of the next steps if When the tool is running fine for normal static web pages any more questions, but
21:47
How is it with? reliability of the tests do Specify your rules. Yeah Thankfully the guy and the people which do the
22:01
Define these act rules, which I'm currently using a space also define and test cases For tools which implement them so that should be easy to check That's also One of the parts which I'm currently
22:24
Working on as you maybe know You find with many problems when you start testing and when you are developing such novel tools so sometimes you
22:41
Are not as fast with the development as you want and I hope to show To that I could show more today, but Unfortunately, there are some nasty bugs which I have to address in
23:05
Parts where I didn't expect them For example this performance problem Which I didn't expect first when I planned the architecture of the tool So that's one thing I have to address and which takes a lot of time
23:27
to find the reasons where the problem is exactly So one more question about the development of the tool so it's part of your PhD project. So did you
23:49
Develop it all yourself or did you also consider what for instance I did in my PhD project like Using students with bachelor master teases to continue the development of the tool
24:05
Maybe it could free up some time for you. I don't know Yeah, maybe maybe at the moment I'm working myself on only myself on that tool and I'm
24:21
quite Certain that I will finish it in The next months so no at the moment no reason to involve other people
24:50
Hi, I would be interested how the report looks like if you have all do you have some? Categorizations like also that you can configure contrast level or descriptions available
25:02
Availability or reachability by keyboard. Yeah, not yet at the moment. It's only structured By the rules so you get for every rule you get output Later versions you will be able to filter the results for example for the
25:27
PC AG conformance level or By other means but for example for contrast web content accessibility guidelines give a very explicit
25:41
Measurement which is necessary, so there's not much interpretation much room for If clinicians there
26:01
May also ask a question of course I was surprised that you don't crawl the whole website But you already need a half an hour for one page even this is a large page, but yeah anyhow this Makes a problem quite complex to reduce the two to increase the speed of
26:21
analyze I Think one of the reasons why it takes so long is that the communication between the bot and the service Is not efficient yet and the saving of the results takes too long but the problem is
26:43
Mm-hmm if you am I Already start multiple threats in the bot to do the evaluation so But you can't Start all your own threats in a Java web application
27:04
And so I had to split this And I think I'm on a good way at the moment and the development to cut down the time the
27:23
evaluation needs and When that's when I'm Satisfied with the performance for one page, then I will Do the things for the other side for a whole site I don't think I will crawl the page real a site really he I think you will
27:48
define which pages you want to be evaluated because many These sites have some typical pages They are built by templates and if you you
28:02
If you are the developer, you know More or less which pages are typical for your page so that you don't have to evaluate every single Page you do the important ones the complex ones and leave out
28:21
Smaller no ones which are identical from their Structure but only different our content Okay, any more questions, no, I don't see yeah, so thank you very much for your talk. Thank you and
28:42
Thank you for the audience and then I think we can close the session for the break and See you in the afternoon