SlideShare a Scribd company logo
1 of 33
GNOME Accessibility & Automation Testing A brief introduction to use GNOME Accessibility to do automation test Ray Wang Software Engineer Novell / rawang@novell.com
Agenda ,[object Object]
AT-SPI ,[object Object],[object Object]
LDTP
Orca
Dogtail
Strongwind
What is Accessibility?
What is Accessibility?  Definition ,[object Object]
Ability to access
Being able to use a Computer regardless of disability or severity of impairment
Wikipedia ,[object Object]
http://en.wikipedia.org/wiki/Computer_accessibility
Other stuff...
What is Accessibility?  Definition ,[object Object]
Motor & Speech
Hearing
Cognitive
What is Accessibility?  AT-SPI ,[object Object]
GNOME Accessibility infrastructure
AT-SPI ,[object Object]
pyatspi
atk-bridge
registryd
What is Accessibility?  AT-SPI ,[object Object]
What is Accessibility?  AT-SPI ,[object Object]
What is Accessibility?  AT-SPI ,[object Object]
What is Accessibility?  AT-SPI ,[object Object]
What is Accessibility?  AT-SPI ,[object Object],API calls EVENTS
What is Accessibility?  AT-SPI (GNOME) ,[object Object]
What is Accessibility?  AT-SPI (GNOME) AT-SPI GAIL ,[object Object]
The  GAIL  module
What is Accessibility?  AT-SPI (Java) AT-SPI ,[object Object]

More Related Content

What's hot

Development workflow
Development workflowDevelopment workflow
Development workflowSigsiu.NET
 
Robot Framework with Python | Edureka
Robot Framework with Python | EdurekaRobot Framework with Python | Edureka
Robot Framework with Python | EdurekaEdureka!
 
Monkey runner & Monkey testing
Monkey runner & Monkey testingMonkey runner & Monkey testing
Monkey runner & Monkey testingSWAAM Tech
 
[AnDevCon 2016] Mutation Testing for Android
[AnDevCon 2016] Mutation Testing for Android[AnDevCon 2016] Mutation Testing for Android
[AnDevCon 2016] Mutation Testing for AndroidHazem Saleh
 
Reverse engineering and instrumentation of android apps
Reverse engineering and instrumentation of android appsReverse engineering and instrumentation of android apps
Reverse engineering and instrumentation of android appsGaurav Lochan
 
Robot Framework Introduction & Sauce Labs Integration
Robot Framework Introduction & Sauce Labs IntegrationRobot Framework Introduction & Sauce Labs Integration
Robot Framework Introduction & Sauce Labs IntegrationSauce Labs
 
Contributing to StrongLoop LoopBack (and other open source projects)
Contributing to StrongLoop LoopBack (and other open source projects)Contributing to StrongLoop LoopBack (and other open source projects)
Contributing to StrongLoop LoopBack (and other open source projects)Supasate Choochaisri
 
Efficient mobile automation
Efficient mobile automationEfficient mobile automation
Efficient mobile automationVitaly Tatarinov
 
How to be a Tizen Committer
How to be a Tizen CommitterHow to be a Tizen Committer
How to be a Tizen CommitterEun Young Lee
 
Code Coverage Revised : EclEmma on JaCoCo
Code Coverage Revised : EclEmma on JaCoCoCode Coverage Revised : EclEmma on JaCoCo
Code Coverage Revised : EclEmma on JaCoCoEvgeny Mandrikov
 
Network Protocol Testing Using Robot Framework
Network Protocol Testing Using Robot FrameworkNetwork Protocol Testing Using Robot Framework
Network Protocol Testing Using Robot FrameworkPayal Jain
 
Test Automation On Android Platform Using Robotium
Test Automation On Android Platform Using RobotiumTest Automation On Android Platform Using Robotium
Test Automation On Android Platform Using RobotiumIndicThreads
 

What's hot (13)

Development workflow
Development workflowDevelopment workflow
Development workflow
 
Robot Framework with Python | Edureka
Robot Framework with Python | EdurekaRobot Framework with Python | Edureka
Robot Framework with Python | Edureka
 
JavaCro'14 - Test Automation using RobotFramework Libraries – Stojan Peshov
JavaCro'14 - Test Automation using RobotFramework Libraries – Stojan PeshovJavaCro'14 - Test Automation using RobotFramework Libraries – Stojan Peshov
JavaCro'14 - Test Automation using RobotFramework Libraries – Stojan Peshov
 
Monkey runner & Monkey testing
Monkey runner & Monkey testingMonkey runner & Monkey testing
Monkey runner & Monkey testing
 
[AnDevCon 2016] Mutation Testing for Android
[AnDevCon 2016] Mutation Testing for Android[AnDevCon 2016] Mutation Testing for Android
[AnDevCon 2016] Mutation Testing for Android
 
Reverse engineering and instrumentation of android apps
Reverse engineering and instrumentation of android appsReverse engineering and instrumentation of android apps
Reverse engineering and instrumentation of android apps
 
Robot Framework Introduction & Sauce Labs Integration
Robot Framework Introduction & Sauce Labs IntegrationRobot Framework Introduction & Sauce Labs Integration
Robot Framework Introduction & Sauce Labs Integration
 
Contributing to StrongLoop LoopBack (and other open source projects)
Contributing to StrongLoop LoopBack (and other open source projects)Contributing to StrongLoop LoopBack (and other open source projects)
Contributing to StrongLoop LoopBack (and other open source projects)
 
Efficient mobile automation
Efficient mobile automationEfficient mobile automation
Efficient mobile automation
 
How to be a Tizen Committer
How to be a Tizen CommitterHow to be a Tizen Committer
How to be a Tizen Committer
 
Code Coverage Revised : EclEmma on JaCoCo
Code Coverage Revised : EclEmma on JaCoCoCode Coverage Revised : EclEmma on JaCoCo
Code Coverage Revised : EclEmma on JaCoCo
 
Network Protocol Testing Using Robot Framework
Network Protocol Testing Using Robot FrameworkNetwork Protocol Testing Using Robot Framework
Network Protocol Testing Using Robot Framework
 
Test Automation On Android Platform Using Robotium
Test Automation On Android Platform Using RobotiumTest Automation On Android Platform Using Robotium
Test Automation On Android Platform Using Robotium
 

Viewers also liked

Rao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For Gnome
Rao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For GnomeRao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For Gnome
Rao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For GnomeMario B.
 
Tran Van Tuan - Gnome Asia Talk 20 11 2009
Tran Van Tuan - Gnome Asia Talk 20 11 2009Tran Van Tuan - Gnome Asia Talk 20 11 2009
Tran Van Tuan - Gnome Asia Talk 20 11 2009Mario B.
 
Louis Suarez Potts - Community Matters Copu2009
Louis Suarez Potts - Community Matters Copu2009Louis Suarez Potts - Community Matters Copu2009
Louis Suarez Potts - Community Matters Copu2009Mario B.
 
Freifunk Presentation English
Freifunk Presentation EnglishFreifunk Presentation English
Freifunk Presentation EnglishMario B.
 
OLPC Vietnam - Pilot Project Vung Vieng Fishing Village
OLPC Vietnam - Pilot Project Vung Vieng Fishing VillageOLPC Vietnam - Pilot Project Vung Vieng Fishing Village
OLPC Vietnam - Pilot Project Vung Vieng Fishing VillageMario B.
 
Freifunk-Scanner
Freifunk-ScannerFreifunk-Scanner
Freifunk-Scannersemagela
 
Pockey Lam - Women In It
Pockey Lam - Women In ItPockey Lam - Women In It
Pockey Lam - Women In ItMario B.
 
Lubuntu at FOSSASIA 2011
Lubuntu at FOSSASIA 2011Lubuntu at FOSSASIA 2011
Lubuntu at FOSSASIA 2011Mario B.
 

Viewers also liked (8)

Rao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For Gnome
Rao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For GnomeRao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For Gnome
Rao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For Gnome
 
Tran Van Tuan - Gnome Asia Talk 20 11 2009
Tran Van Tuan - Gnome Asia Talk 20 11 2009Tran Van Tuan - Gnome Asia Talk 20 11 2009
Tran Van Tuan - Gnome Asia Talk 20 11 2009
 
Louis Suarez Potts - Community Matters Copu2009
Louis Suarez Potts - Community Matters Copu2009Louis Suarez Potts - Community Matters Copu2009
Louis Suarez Potts - Community Matters Copu2009
 
Freifunk Presentation English
Freifunk Presentation EnglishFreifunk Presentation English
Freifunk Presentation English
 
OLPC Vietnam - Pilot Project Vung Vieng Fishing Village
OLPC Vietnam - Pilot Project Vung Vieng Fishing VillageOLPC Vietnam - Pilot Project Vung Vieng Fishing Village
OLPC Vietnam - Pilot Project Vung Vieng Fishing Village
 
Freifunk-Scanner
Freifunk-ScannerFreifunk-Scanner
Freifunk-Scanner
 
Pockey Lam - Women In It
Pockey Lam - Women In ItPockey Lam - Women In It
Pockey Lam - Women In It
 
Lubuntu at FOSSASIA 2011
Lubuntu at FOSSASIA 2011Lubuntu at FOSSASIA 2011
Lubuntu at FOSSASIA 2011
 

Similar to GNOME Accessibility Automation Testing

Android automation tools
Android automation toolsAndroid automation tools
Android automation toolsSSGMCE SHEGAON
 
Advanced deployment scenarios (netcoreconf)
Advanced deployment scenarios (netcoreconf)Advanced deployment scenarios (netcoreconf)
Advanced deployment scenarios (netcoreconf)Sergio Navarro Pino
 
Ubuntu Core 技术详解
Ubuntu Core 技术详解Ubuntu Core 技术详解
Ubuntu Core 技术详解Rex Tsai
 
Webapps development on ubuntu
Webapps development on ubuntuWebapps development on ubuntu
Webapps development on ubuntuXiaoguo Liu
 
100 effective software testing tools that boost your Testing
100 effective software testing tools that boost your Testing100 effective software testing tools that boost your Testing
100 effective software testing tools that boost your TestingBugRaptors
 
Software testing tools
Software testing toolsSoftware testing tools
Software testing toolsGaurav Paliwal
 
Mobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdf
Mobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdfMobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdf
Mobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdfkalichargn70th171
 
Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview (Selenium Israel #2, Feb. 2014)Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview (Selenium Israel #2, Feb. 2014)danielputerman
 
FusionInventory at LSM/RMLL 2012
FusionInventory at LSM/RMLL 2012FusionInventory at LSM/RMLL 2012
FusionInventory at LSM/RMLL 2012Nouh Walid
 
UFT- New features and comparison with QTP
UFT- New features and comparison with QTPUFT- New features and comparison with QTP
UFT- New features and comparison with QTPRita Singh
 
Uber mobility - Build & Release
Uber mobility - Build & ReleaseUber mobility - Build & Release
Uber mobility - Build & ReleaseDhaval Patel
 
Unit Tests? It is Very Simple and Easy!
Unit Tests? It is Very Simple and Easy!Unit Tests? It is Very Simple and Easy!
Unit Tests? It is Very Simple and Easy!Return on Intelligence
 
YuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14h
YuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14hYuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14h
YuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14hYury M
 
stackconf 2022: It’s Time to Debloat the Cloud with Unikraft
stackconf 2022: It’s Time to Debloat the Cloud with Unikraftstackconf 2022: It’s Time to Debloat the Cloud with Unikraft
stackconf 2022: It’s Time to Debloat the Cloud with UnikraftNETWAYS
 
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016Ori Bendet
 
Online gas booking project in java
Online gas booking project in javaOnline gas booking project in java
Online gas booking project in javas4al_com
 
Stepin evening presented
Stepin evening presentedStepin evening presented
Stepin evening presentedVijayan Reddy
 

Similar to GNOME Accessibility Automation Testing (20)

Android automation tools
Android automation toolsAndroid automation tools
Android automation tools
 
ON.LAB Mininet
ON.LAB MininetON.LAB Mininet
ON.LAB Mininet
 
Advanced deployment scenarios (netcoreconf)
Advanced deployment scenarios (netcoreconf)Advanced deployment scenarios (netcoreconf)
Advanced deployment scenarios (netcoreconf)
 
Ubuntu Core 技术详解
Ubuntu Core 技术详解Ubuntu Core 技术详解
Ubuntu Core 技术详解
 
Webapps development on ubuntu
Webapps development on ubuntuWebapps development on ubuntu
Webapps development on ubuntu
 
100 effective software testing tools that boost your Testing
100 effective software testing tools that boost your Testing100 effective software testing tools that boost your Testing
100 effective software testing tools that boost your Testing
 
Software testing tools
Software testing toolsSoftware testing tools
Software testing tools
 
What's new in p2 (2009)?
What's new in p2 (2009)?What's new in p2 (2009)?
What's new in p2 (2009)?
 
Mobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdf
Mobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdfMobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdf
Mobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdf
 
Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview (Selenium Israel #2, Feb. 2014)Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview (Selenium Israel #2, Feb. 2014)
 
FusionInventory at LSM/RMLL 2012
FusionInventory at LSM/RMLL 2012FusionInventory at LSM/RMLL 2012
FusionInventory at LSM/RMLL 2012
 
Rajiv Profile
Rajiv ProfileRajiv Profile
Rajiv Profile
 
UFT- New features and comparison with QTP
UFT- New features and comparison with QTPUFT- New features and comparison with QTP
UFT- New features and comparison with QTP
 
Uber mobility - Build & Release
Uber mobility - Build & ReleaseUber mobility - Build & Release
Uber mobility - Build & Release
 
Unit Tests? It is Very Simple and Easy!
Unit Tests? It is Very Simple and Easy!Unit Tests? It is Very Simple and Easy!
Unit Tests? It is Very Simple and Easy!
 
YuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14h
YuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14hYuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14h
YuryMakedonov_GUI_TestAutomation_QAI_Canada_2007_14h
 
stackconf 2022: It’s Time to Debloat the Cloud with Unikraft
stackconf 2022: It’s Time to Debloat the Cloud with Unikraftstackconf 2022: It’s Time to Debloat the Cloud with Unikraft
stackconf 2022: It’s Time to Debloat the Cloud with Unikraft
 
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
 
Online gas booking project in java
Online gas booking project in javaOnline gas booking project in java
Online gas booking project in java
 
Stepin evening presented
Stepin evening presentedStepin evening presented
Stepin evening presented
 

More from Mario B.

Creative Commons in Vietnam - Presentation by Mario Behling and Hong Phuc Dan...
Creative Commons in Vietnam - Presentation by Mario Behling and Hong Phuc Dan...Creative Commons in Vietnam - Presentation by Mario Behling and Hong Phuc Dan...
Creative Commons in Vietnam - Presentation by Mario Behling and Hong Phuc Dan...Mario B.
 
Frank Schellenberg - Ghp Far Ease Gnome Asia 2009
Frank Schellenberg - Ghp Far Ease  Gnome Asia 2009Frank Schellenberg - Ghp Far Ease  Gnome Asia 2009
Frank Schellenberg - Ghp Far Ease Gnome Asia 2009Mario B.
 
Huu Le - Tma Open Source For Project Tools
Huu Le - Tma Open Source For Project ToolsHuu Le - Tma Open Source For Project Tools
Huu Le - Tma Open Source For Project ToolsMario B.
 
Nguyen Vu Hung - Gnome Asia 2009 The Vision Of O Oo In Vietnam
Nguyen Vu Hung - Gnome Asia 2009 The Vision Of O Oo In VietnamNguyen Vu Hung - Gnome Asia 2009 The Vision Of O Oo In Vietnam
Nguyen Vu Hung - Gnome Asia 2009 The Vision Of O Oo In VietnamMario B.
 
Fred Muller - Building Amips Netbook
Fred Muller - Building Amips NetbookFred Muller - Building Amips Netbook
Fred Muller - Building Amips NetbookMario B.
 
Mario Behling - Easier Faster Energy Saving
Mario Behling - Easier Faster Energy SavingMario Behling - Easier Faster Energy Saving
Mario Behling - Easier Faster Energy SavingMario B.
 
GNOME.Asia 2009 Vietnam
GNOME.Asia 2009 VietnamGNOME.Asia 2009 Vietnam
GNOME.Asia 2009 VietnamMario B.
 
DebConf11 Berlin Proposal
DebConf11 Berlin ProposalDebConf11 Berlin Proposal
DebConf11 Berlin ProposalMario B.
 
Debconf 11 in Germany
Debconf 11 in GermanyDebconf 11 in Germany
Debconf 11 in GermanyMario B.
 
LXDE Google Summer of Code 2009
LXDE Google Summer of Code 2009LXDE Google Summer of Code 2009
LXDE Google Summer of Code 2009Mario B.
 
6mesh - IPv6 freifunk mesh networks
6mesh - IPv6 freifunk mesh networks6mesh - IPv6 freifunk mesh networks
6mesh - IPv6 freifunk mesh networksMario B.
 
LXDE Presentation at FOSDEM 2009
LXDE Presentation at FOSDEM 2009LXDE Presentation at FOSDEM 2009
LXDE Presentation at FOSDEM 2009Mario B.
 
LXDE Icos2008 Presentation
LXDE Icos2008 PresentationLXDE Icos2008 Presentation
LXDE Icos2008 PresentationMario B.
 
Wimax and Network planning
Wimax and Network planningWimax and Network planning
Wimax and Network planningMario B.
 
Wimax and Sustainability strategies
Wimax and Sustainability strategiesWimax and Sustainability strategies
Wimax and Sustainability strategiesMario B.
 
Community, gender and technology
Community, gender and technologyCommunity, gender and technology
Community, gender and technologyMario B.
 
Long distance wireless link
Long distance wireless linkLong distance wireless link
Long distance wireless linkMario B.
 
Wimax and VoIP Presentation
Wimax and VoIP PresentationWimax and VoIP Presentation
Wimax and VoIP PresentationMario B.
 
Energy for telecommunications systems - Wimax Systems, Presentation - Dimensi...
Energy for telecommunications systems - Wimax Systems, Presentation - Dimensi...Energy for telecommunications systems - Wimax Systems, Presentation - Dimensi...
Energy for telecommunications systems - Wimax Systems, Presentation - Dimensi...Mario B.
 
Energy for telecommunications systems - Wimax Systems, Presentation - Introdu...
Energy for telecommunications systems - Wimax Systems, Presentation - Introdu...Energy for telecommunications systems - Wimax Systems, Presentation - Introdu...
Energy for telecommunications systems - Wimax Systems, Presentation - Introdu...Mario B.
 

More from Mario B. (20)

Creative Commons in Vietnam - Presentation by Mario Behling and Hong Phuc Dan...
Creative Commons in Vietnam - Presentation by Mario Behling and Hong Phuc Dan...Creative Commons in Vietnam - Presentation by Mario Behling and Hong Phuc Dan...
Creative Commons in Vietnam - Presentation by Mario Behling and Hong Phuc Dan...
 
Frank Schellenberg - Ghp Far Ease Gnome Asia 2009
Frank Schellenberg - Ghp Far Ease  Gnome Asia 2009Frank Schellenberg - Ghp Far Ease  Gnome Asia 2009
Frank Schellenberg - Ghp Far Ease Gnome Asia 2009
 
Huu Le - Tma Open Source For Project Tools
Huu Le - Tma Open Source For Project ToolsHuu Le - Tma Open Source For Project Tools
Huu Le - Tma Open Source For Project Tools
 
Nguyen Vu Hung - Gnome Asia 2009 The Vision Of O Oo In Vietnam
Nguyen Vu Hung - Gnome Asia 2009 The Vision Of O Oo In VietnamNguyen Vu Hung - Gnome Asia 2009 The Vision Of O Oo In Vietnam
Nguyen Vu Hung - Gnome Asia 2009 The Vision Of O Oo In Vietnam
 
Fred Muller - Building Amips Netbook
Fred Muller - Building Amips NetbookFred Muller - Building Amips Netbook
Fred Muller - Building Amips Netbook
 
Mario Behling - Easier Faster Energy Saving
Mario Behling - Easier Faster Energy SavingMario Behling - Easier Faster Energy Saving
Mario Behling - Easier Faster Energy Saving
 
GNOME.Asia 2009 Vietnam
GNOME.Asia 2009 VietnamGNOME.Asia 2009 Vietnam
GNOME.Asia 2009 Vietnam
 
DebConf11 Berlin Proposal
DebConf11 Berlin ProposalDebConf11 Berlin Proposal
DebConf11 Berlin Proposal
 
Debconf 11 in Germany
Debconf 11 in GermanyDebconf 11 in Germany
Debconf 11 in Germany
 
LXDE Google Summer of Code 2009
LXDE Google Summer of Code 2009LXDE Google Summer of Code 2009
LXDE Google Summer of Code 2009
 
6mesh - IPv6 freifunk mesh networks
6mesh - IPv6 freifunk mesh networks6mesh - IPv6 freifunk mesh networks
6mesh - IPv6 freifunk mesh networks
 
LXDE Presentation at FOSDEM 2009
LXDE Presentation at FOSDEM 2009LXDE Presentation at FOSDEM 2009
LXDE Presentation at FOSDEM 2009
 
LXDE Icos2008 Presentation
LXDE Icos2008 PresentationLXDE Icos2008 Presentation
LXDE Icos2008 Presentation
 
Wimax and Network planning
Wimax and Network planningWimax and Network planning
Wimax and Network planning
 
Wimax and Sustainability strategies
Wimax and Sustainability strategiesWimax and Sustainability strategies
Wimax and Sustainability strategies
 
Community, gender and technology
Community, gender and technologyCommunity, gender and technology
Community, gender and technology
 
Long distance wireless link
Long distance wireless linkLong distance wireless link
Long distance wireless link
 
Wimax and VoIP Presentation
Wimax and VoIP PresentationWimax and VoIP Presentation
Wimax and VoIP Presentation
 
Energy for telecommunications systems - Wimax Systems, Presentation - Dimensi...
Energy for telecommunications systems - Wimax Systems, Presentation - Dimensi...Energy for telecommunications systems - Wimax Systems, Presentation - Dimensi...
Energy for telecommunications systems - Wimax Systems, Presentation - Dimensi...
 
Energy for telecommunications systems - Wimax Systems, Presentation - Introdu...
Energy for telecommunications systems - Wimax Systems, Presentation - Introdu...Energy for telecommunications systems - Wimax Systems, Presentation - Introdu...
Energy for telecommunications systems - Wimax Systems, Presentation - Introdu...
 

Recently uploaded

How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 

Recently uploaded (20)

How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 

GNOME Accessibility Automation Testing

Editor's Notes

  1. Visual: Common, Age, Large Fonts, High Contrast, Magnification, Screen Reader Motor & Speech: Mild -> Serious, Ignore False Activation, Specialized or Alternative Input Devices Synthetic Speech Hearing: Mild -> Serious, Subtitles Cognitive: Reading disorders, Comprehension & Composition Difficulties Speech Recognition Text Highlighting, Careful UI Design, Symbols & Pictures.
  2. CSPI: The library for C bindings Pyatspi:The Python bindings atk-bridge: The bridges, of course, need to understand both sides of what it being bridged; so atk-bridge must link to both ATK and AT-SPI. Registryd: Daemon
  3. application layer includes productivity software, desktop tools, window manager, panel, etc; these are the same apps found outside ‘accessibility enabled’ environments. Also included in the ‘application layer’ are the GUI toolkits and the APIs necessary to provide accessibility info to the rest of the subsystem. Those APIs may vary among applications and toolkits (i.e. Java, GTK+, mozilla, OpenOffice) but they give adequate information to allow bridging to the common layers below. infrastructure includes what we sometimes call the “accessibility subsystem” and is what people sometimes just call “AT-SPI”. We usually use the name “AT-SPI” more specifically to refer only to the software interfaces and implementations contained in the “AT-SPI” module; either way, the AT-SPI packages are key parts of the infrastructure layer. The infrastructure layer is what enables assistive technologies to interact consistently with different applications. assistive (or adaptive) technologies are the ‘adapter’ programs that help the user operate desktop and apps. Examples: GOK, Orca, dasher Q: are features like StickyKeys assistive technologies? A: It depends who you ask; for our purposes we will call them accessibility utilities or platform accessibility features, and use “AT” to refer to programs that form a direct interface between the end user and the desktop, such as Screen Readers and alternative input systems.
  4. We can divide the infrastructure layer into “bridge code” and AT-SPI; the bridging code connects the applications with the AT-SPI subsystem and therefore can be considered part of the infrastructure. Bridges take accessibility support information (services, events) from within the application and converts it to a common format (in this case, the AT-SPI protocol). Examples: java-access-bridge for GNOME; libatk-bridge. Bridges are important because: Applications on the desktop may implement similar features with a wide variety of code: Applications are written in different languages (C, Java, python, etc.) and may use different b“GUI toolkits” to create their interface components (GTK+, Java/Swing, mozilla-gecko, OpenOffice). Their object models and internal APIs may be very different from one another (Gobject, UNO, mozilla) This information needs to be shared or “exported” in a common ABI and via a common IPC protocol. We refer to the code that converts to and from the common format as “bridging” code.
  5. Bridges also listen to application events, for instance AtkObject events which are implemented as Gsignals, and convert them into the appropriate AT-SPI event notifications. Events may give the AT some information about a change which has occurred in an application, but in many cases the AT needs to make API calls in response to an event in order to update the information it presents to the user. For instance, if focus moves to a new widget, speech and/or braille output may needed to inform the user of this change and in order to create a useful presentation of the newly focused object for the user (either as a spoken words or braille dots); alternatively if GOK is being used and a menu is focused or pops up, GOK may wish to traverse this menu in order to present the new choices to the user as a set of selectable “GOK Buttons”.
  6. GNOME applications implement an in-process accessibility API called ATK. This is ‘bridged’ to the common AT-SPI layer by the ATK-bridge module. Atk-bridge exports ATK information via AT-SPI – it knows and understands the ATK API, but it doesn't know anything about specific applications or even anything about gtk+.
  7. GAIL hooks into ATK and implements ATK interfaces on behalf of GTK+. GAIL knows about ATK and GTK+, but neither ATK nor GTK+ know about GAIL. GAIL is dynamically loaded via GTK_MODULES The ATK implementations for the GTK+ widget set are provided by an extermal library called GAIL (or libgail). It is external for mostly historical reasons, and partly in order to allow alternate implementations to be loaded by specialized applications. In the diagram above, note that GAIL gets information from GTK+ via public GTK+ API, and uses that information to fulfill the ATK interfaces on behalf of those widgets. For instance the atk-bridge calls ATK API, but the ATK call is redirected through code in libgail which in turn uses gtk+ API calls to provide the corresponding information.
  8. Swing defines a java-specific accessibility API in javax.accessibility The end result is AT-SPI, just as for GNOME apps (interoperability). OpenOffice.org have an internal UNO Accessibility API. Until recently they bridged internally to javax.accessibility; now they bridge to ATK. Java ATK Wrapper