Hello everyone,

Platform accessibility (a11y) conformance tests for the GTK3 VCL [1] have been merged a couple days ago. This is a set of tests validating that the a11y exposed to the platform on Linux using the GTK3 VCL is coherent with the internal representation in LO. This can catch (and already had caught) issues in the VCL layer not correctly transmitting data over -- and even more [2]. You can read a bit more on the technical side of things on the wiki page [3].

These tests are enabled by default if all dependencies are available. That is a working Xvfb [4], dbus-launch, and the AT-SPI2 library [5] which is used to communicate with the platform accessibility daemon. It is also possible to either enable or disable them forcefully, using --enable-atspi-test and --disable-atspi-tests respectively.

Linux CIs are running these tests, but anybody willing is encouraged to enable those locally and report any issue (don't hesitate to CC me).

Anybody interested is also more than welcome to extend coverage of these tests! At the moment only a subset of the a11y APIs are checked, yet it should not be very hard to add more. If you're interested, give [3] a look and again, don't hesitate to get in touch with me. If you're interested in making this work with another VCL (Qt6, GTK4, etc.) it would also be great, but probably require a tad more work. It would however be very interesting, and would add coverage for another substantial module :)

You're also more than welcome to build on the concept for other platforms (e.g. Window or macos). I expect those to look fairly similar, but require a wholly different platform wrapping layer (obviously they'd use something other than libatspi, and they might need to adapt to differences in the platform's expectations, although they are actually fairly similar).

Happy testing!
Regards,
Colomban

PS: huge thanks to everyone that helped me getting this finally done, including but not limited to testing, fixing blocker bugs, adjust CI environment, and everything else :)

[1] https://gerrit.libreoffice.org/c/core/+/153069
[2] e.g. https://bugs.documentfoundation.org/show_bug.cgi?id=155625
[3] https://wiki.documentfoundation.org/Development/Accessibility_Unit_Tests#Platform_accessibility_tests
[4] https://en.wikipedia.org/wiki/Xvfb
[5] https://docs.gtk.org/atspi2/index.html

Reply via email to