New tests: GTK3 platform accessibility
cwendling at hypra.fr
Tue Aug 1 17:30:05 UTC 2023
Platform accessibility (a11y) conformance tests for the GTK3 VCL 
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 . You can read a bit more on the
technical side of things on the wiki page .
These tests are enabled by default if all dependencies are available.
That is a working Xvfb , dbus-launch, and the AT-SPI2 library 
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  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).
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 :)
 e.g. https://bugs.documentfoundation.org/show_bug.cgi?id=155625
More information about the LibreOffice