Automated assistive-technology driven accessibility testing environments
View Patent ↗Assistive service driven automated accessibility testing environments in accordance with embodiments of the invention are disclosed. In one embodiment, an automated environment for testing an application (“app”) using an assistive service is provided, the automated environment being embodied in code executable by a processor of a testing device, which when executed causes the testing device to generate at least one use-case specification for an app under test, execute at least part of the at least one use-case specification on the app using at least one assistive service, and generate an accessibility report for the app.
1 . An automated environment for testing an application (“app under test”) using at least one assistive service, the automated environment being embodied in code executable by a processor of a testing device, which when executed causes the testing device to:
generate at least one use-case specification for an app under test, wherein the at least one use-case specification comprises a human-perceivable step to be completed on the app under test;
execute the at least one use-case specification on the app under test using the at least one assistive service, wherein the at least one assistive service assists a user with a disability to complete a functionality on the app under test, and wherein the at least one use-case specification is executed by:
launching the app under test;
launching the at least one assistive service to operate in conjunction with the app under test; and
performing the at least one use-case specification on the app
under test, wherein the human-perceivable step of the at least one use-case specification is performed using the at least one assistive service; and
generate an accessibility report for the app under test.
2 . The automated environment of claim 1 , wherein the at least one assistive service is a screen reader for users with visual impairment.
3 . The automated environment of claim 1 , wherein the at least one assistive service is a navigation tool for users with motor impairment.
4 . The automated environment of claim 1 , wherein the at least one assistive service is a voice user interface for users with visual, physical, or motor impairment.
5 . The automated environment of claim 1 , wherein the at least one assistive service is an alerting tool for users with hearing impairment.
6 . The automated environment of claim 1 , wherein the automated environment is embodied in further code that, when executed by the processor, further causes the testing device to generate the at least one use-case specification by analyzing at least one Graphical User Interface (GUI) test.
7 . The automated environment of claim 6 , wherein the automated environment is embodied in further code that, when executed by the processor, further causes the testing device to analyze the GUI test by determining at least one GUI element and at least one action performed on the at least one GUI element.
8 . The automated environment of claim 1 , wherein the automated environment is embodied in further code that, when executed by the processor, further causes the testing device to generate the at least one use-case specification by observing for a manually performed human-perceivable step on the app under test.
9 . The automated environment of claim 1 , wherein the automated environment is embodied in further code that, when executed by the processor, further causes the testing device to generate the at least one use-case specification by automatically crawling the app under test.
10 . The automated environment of claim 1 , wherein the automated environment is embodied in further code that, when executed by the processor, further causes the testing device to execute the at least one use-case specification by generating accessibility events.
11 . The automated environment of claim 10 , wherein the automated environment is embodied in further code that, when executed by the processor, further causes the testing device to execute the at least one use-case specification by analyzing the accessibility events and initiating at least one action using the assistive service.
12 . The automated environment of claim 11 , wherein the automated environment is embodied in further code that, when executed by the processor, further causes the testing device to execute the at least one use-case specification by executing the at least one action on the app under test.
13 . The automated environment of claim 12 , wherein the automated environment is embodied in further code that, when executed by the processor, further causes the testing device to execute the at least one use-case specification by receiving result data from the app under test based on executing the at least one action.
14 . The automated environment of claim 13 , wherein the automated environment is embodied in further code that, when executed by the processor, further causes the testing device to generate the accessibility report using the result data from the app under test.
15 . The automated environment of claim 1 , wherein the automated environment is embodied in further code that, when executed by the processor, further causes the testing device to execute the at least one use-case specification using at least one termination condition.
16 . The automated environment of claim 15 , wherein the at least one termination condition is configurable.
17 . The automated environment of claim 1 , wherein the automated environment is embodied in further code that, when executed by the processor, further causes the testing device to execute the at least one use-case specification on the app under test via an emulator.
18 . The automated environment of claim 1 , wherein the accessibility report comprises accessibility failures encountered by the app under test during execution of the at least one use-case specification using the at least one assistive service.
19 . The automated environment of claim 1 , wherein the accessibility report comprises recorded screens of the app under test during execution of the at least one use-case specification using the at least one assistive service.
20 . The automated environment of claim 1 , wherein the accessibility report comprises execution details that include metadata generated during execution of the at least one use-case specification using the at least one assistive service.
21 . The automated environment of claim 1 , wherein the accessibility report comprises accessibility warnings encountered by the app under test during execution of the at least one use-case specification using the at least one assistive service.
22 . The automated environment of claim 1 , wherein the automated environment is executed after an app update as part of a continuous integration development process.
23 . The automated environment of claim 1 , wherein the automated environment is executed as part of a regression testing process to determine if the accessibility of a new version of the app under test is improving or degrading.