Category Archives: Accessibility

Test idea number 1 – Use the screen reader – part 2

At the Club of Ministry of Testing, Rosie Sherry asked to share test ideas in five words or less. My first test idea was: use the screen reader. In the previous blog post some aspects of testing with a screen reader have been highlighted. There is more stuff to think about. Or to be read.

A more holistic approach

Getting good quality also implies involving developers, product owners, and managers from the start. A lot of people tend to determine the quality of an app or web site for a screen reader in the final phases of the development of a product. This order of activities is not as expected.

If some laws require to make web sites or apps accessible for screen readers, then the selection of the UI elements should be strict. A law has some priority. Fortunately.

Whether the UI elements came through the initial test, they should be monitored. Even, if they are not updated by your own developers. Even removing UI elements can have some consequences for the operation of the app or web site.

There are other test activities than reviewing use stories and using the screen reader at the end. This means, that extra developer activities must be added. This is the reason I call this a holistic approach. As a tester, I tend to, look at the tools and the processes to make the software. That can be outside the tester comfort zone.

According to me, a life cycle approach should be used for each UI element. This cycle contains the following phases: Create, Read, Update, and Delete.

How to test Create a UI element suited for a screen reader

Use standard UI elements, which are automatically recognised by screen readers.

Use a library of accessible UI elements.

Extend existing code of UI elements. Inheritance is a way to make stable code. It is like adding some extra features to an existing UI element. A combo box based on code of another combo box might also
change.

Avoid making UI elements from scratch. For web sites the HTML tag Aria looks very compelling, but it takes some consideration. Suppose I like have a blue car. Inheritance would lead to buying a car and painting it blue. Aria would be like building a car from scratchans using blue paint. 

Use standard development practices. This year Sonos released an inaccessible app for iOS. The standard iOS elements are accessible, so the developers had taken some strange steps to use own elements
and instead.

Use good tools. This also applies for systems which can be adjusted to your company or organisation. I heard about a system which was accessible for job seekers, but not for the people inside the company.

Make a big app or web site with all custom-made GUI elements for evaluation. This is also needed for 3rd party softwire like cookie banner, chat bots, and web shop functionality.

To be extended.

Test idea number 1 – part 1

At the Club of Ministry of Testing, Rosie Sherry asked to share test ideas in five words or less. My first test idea was: use the screen reader. That saved 1 word.

Introducing the screen reader

Describing the screen reader

A screen reader is a program, which reads aloud, what is happening on the screen. This program is used by blind or visually impaired users. Now they can get their own information or buy their own things. There is less need for help from family members or friends. That saves 5 minutes or more.

Mentioning aspects of the screen reader

My first experience was reading a legal text on a laptop. It was about Content. Now you might ask which other aspects are applicable.

During the demonstration, the cursor sprung from one paragraph to the next one with a short cut or key combination. The first paragraphs formed an introduction, which could be skipped after listening to the first sentence. So, the next aspect is Construction.

During the last years I noticed, that also my input was spoken aloud. Especially the buttons with a restricted input like checkboxes and combo boxes. It is always nice to hear, what I selected. This leads to the next aspect: Control.

There are some parts in the world, where people can speak different languages. For example, I live in the Netherlands and read English. One of my apps overruled the language of the screen reader, so I do not hear Dutch words with an English pronunciation. That is quite agreeable to hear. The last aspect is Choice of language.

So, testing with a screen reader is about Content, Control, Construction, and Choice of language. This will come back later.

Finding a screen reader

A lot of operating systems have a built-in screen reader. Windows has Narrator and Apple MacOS systems Voice Over. On the mobile front there is TalkBack on Android and VoiceOver on the iOS. On Windows there are alternatives like NVDA and JAWS, which is a part of Fusion.

Did I mention LINUX? There are also screen readers available for that operating system.

How to test with a screen reader

Let’s go back to Content, Control, Construction, and Choice of language. As promised.

How to test Content

Move the focus to images. By hovering the mouse above the a over a picture. Or pointing with a finger on the picture on a touchscreen. A picture should have a short story in the alternative text like the pictures in this test automation blog post. The same applies for a graph or a map.

How to test Control

Select a button and listen to the alternative text. This should explain the interaction of the button. Some buttons with nice pictograms might miss some explanation.

Select a value in a combo box or a switch, then listen to the selected value. Check boxes in cookie banners can be quite confusing,

Check whether the format of an input field is read aloud. For example, the date has the format DD-MM-YYYY. In case of error, check whether the error message is clear.

Check the code of the GUI or Graphical User Interface. The alternative text should be filled, if the button has a picture or if a graph is used. A possible solution might be static code analysis. There are accessibility test tools, but they might miss strange alternative texts.

Find the button using the find function of the screen reader. One of the most frequent used buttons, the Logout button, is sometimes hidden in unexpected ways. Note, that a screen reader can convert text to braille, A deaf blind user can use a braille reader to navigate a web site or app.

Feel the course, Luke.

How to test Construction

Check the use of proper headings. I like to
have good overview of an article, why not offer it to people with bad vision? Screen readers offer a nice list of headings and their levels like ”heading level 3, How to test Construction”. The list of headings also gives a user a fast way to jump to the section like “How to test with a screen reader – 2”.

Is it possible to make short cuts? It is like shopping in a super market. I do not want walk pass every shelf for buying only three items. A screen reader like JAWS has a feature to bookmark a certain place on a web page. This is a time saver.

Do you hear where you are or you do? A screen reader like JAWS stores everything it said. It is called history. If the history is not clear, how can a user know what is happening?

Compare the histories of two different executions of the same customer journey with each other. They should be the same, unless the differences are the results of bug fixes. In this case a new baseline for the history must be made. Emily Bache calls this Approval Testing. There are tools available to compare text files. My inner test automation nerd is pondering about combining RPA, a  file comparison tool, and Selenium.

How to test Choice of language

Set the language of the screen reader to English and open a Dutch app. Listen where Dutch is spoken. Or choose the favourite languages of your users based on user data.

A similar test could be executed for a web site. There is an HTML tag for language.

To be continued

System 1 and System 2 in testing – part 1

In March 2024 Daniel Kahneman died. He wrote ”Thinking fast and slow”. This book is about how people handle certain situations. He introduced System 1 and System 2.

For the fast observations System 1 is used in most cases. This way of thinking provides fast, almost effortless way to digest information. Like walking to a shop.

For the thoughtful observations System 2 is used. An example is choosing which things to buy in a shop based on a shopping list or availability.

The way users behave, can lead to good test
ideas.

Supporting System 1

Pointing

For a test I needed a program. As usually, I went to the system administrator. He gave me some instructions to install the program on my own. I had to change one setting and only needed to press the Next button.

My thought process was like: is this the option? Yes, change it and press the Next button. Otherwise press the Next button. I had the program installed within minutes.

It went so smoothly, because the Next button was on the same place every time.

“The right lower corner of a well designed
dialog,
the group of a similar looking buttons.
These are a few of my favourite things.”
(On the melody of “My favorite things”)

Simplifying

One of the consequences of the privacy laws is the cookie banner. On one of my favourite web site there are only two buttons: ”Yes, I agree” and “No, thanks” buttons, This is clear and concise.

Knowledge about System 1 in good hands

A good design of the program stimulates the user to use System 1. The program is easy to use.

Abusing System 1

Hiding

In the past I stumbled on a cookie banner. It had the Accept All button and a More Info button. If I really wanted to visit this web site, then I needed to accept all the cookies. Something I was not looking forward to. It was also not compliant with the privacy laws. There was no way to reject the cookies.

But I was curious, I pressed on the More Info button, A dialog popped up with options to reject cookies. If I only used System 1, then I got unwanted cookies on my PC.

Distracting

On a cookie banner from another web site, I was looking for a way to avoid unnecessary cookies. In the right lower corner of the dialog there were no buttons. This is my favourite place to look for buttons.

My view went up and I noticed the Accept All button. It had a different background colour than the body of the dialog. I was about to press this button, when I noticed another button to the left.

The Reject all button had the same background as the body of the dialog. It did not get my attention because of the colours of the Accept All button.

This particular button had also a bigger impact on people, who have problems with reading. They might prefer the emphasised Accept All button over the normal Reject All button. Also. people with visual impairment would make the same choice because of the bad contrast.

“The right upper corner of a bad designed
dialog,
the group of different looking buttons.
These are a few of my dislikeable things.”
(On the melody of “My favorite things”)

Knowledge about System 1 in bad hands

It is possible to make programs in such way that people make bad choices. These situations are called dark patterns. Especially disabled people are easy victims.

“When System 1 rules, when the user clicks,
when the cookies come,
there was nor second thought, nor hesitation,
just a silent urge.”
(On the melody of “My favorite things”)

To be continued.