-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enterprise search needs a11y tests #79359
Comments
Pinging @elastic/app-search-frontend (Team:AppSearch) |
Thanks @bhavyarm! We can definitely add accessibility tests for the following plugins/pages:
... But unfortunately, I'm not sure we can (easily) add accessibility tests deeper into the products (which at the moment isn't a whole lot, so it's not a huge deal, but might be later on). The problem is that our plugin requires Enterprise Search to run, and as far as we know (or were intending on implementing), Kibana's CI pipeline can't spin it up as a sidecar service. I'm not too sure how in-depth these aXe reports/screenshots are compared to the E2E functional tests - if they're straightforward, it's possible we could somehow feed mock API endpoint data to the plugin, but that's still a pretty high lift for us right now when our focus is on fully migrating 2 products to Kibana by 8.0. If basic a11y tests for just the above 3 pages (that don't require Enterprise Search to be configured/running) are OK for now, I can definitely look at implementing them, and circle back later after our full migration to more in-depth tests. |
With the constraints you laid out, this sounds like a great place to start! |
Awesome!! Thanks so much Michail. Accessibility requirements are definitely important to me personally, but as always it's a tough balancing act w/ our deadlines as well as figuring out what tooling makes the most sense long-term for running our functional/E2E tests. For what it's worth I'm trying to manually audit as much as code as I can accessibility-wise as we migrate it to Kibana. I'll create a ticket in our migration epic for this and shoot to have the 3 pages listed above in Kibana CI by 7.11 |
👋 Apologies this took so dang long y'all :) I have a11y tests added for the scope we mentioned above (i.e., a very small portion of the actual full app): #106765 I'm honestly not super sure if that counts as closing/completing this ticket or if you would consider this completed only if the full app gets tested. This might be complex as we were planning on writing our E2E tests in Cypress, and not necessarily Kibana's FTR. Would using an equivalent a11y plugin in Cypress pass your requirements for having full a11y tests? |
No worries! Your work is awesome! Deque, the makers of axe, have written about setting up axe with cypress so you should be in good company. There aren't strict requirements on how to test so whatever works for y'all will be good. This is ultimately your ticket so feel free to track however is best for your team. |
Pinging @elastic/workplace-search-frontend (Team:WorkplaceSearch) |
I agree if we could test for this in Cypress it would make a lot more sense (since we'll have to solve the "how do we run this in a test harness" problem for Cypress).
I like what you did in #106765 @constancecchen. I think as much as much as its a bummer we should consider leaving this open until we implement this in Cypress (or solve the mock API problem in FTR). I think having a11y tests on our light manual testing / critical path pages (and components?) would be a good compromise requirement? We could prioritize the remaining views/components after that. |
Love it. Huge ++! |
👋 Hey @elastic/app-search-frontend & @elastic/workplace-search-backend! #108465 (once merged in) should set up the ability to automate cypress-axe checks on any views you need. I would suggest setting up basic "visit route, run It hopefully shouldn't be super high-effort, I imagine this wouldn't take more than a few days for a single dev for each product (given that there aren't a bunch of existing failures to fix, knock on wood). All the best! |
Contributes to: elastic#194817 Why I assigned them: Assigned advanced_settings due to elastic#175255 Assigned dashboard_controls due to elastic#190797 Assigned dashboard_links due to elastic#174772 Assigned dashboard_panel_options due to elastic#178596 Assigned grok_debugger due to https://github.com/elastic/kibana/blob/main/x-pack/plugins/grokdebugger/kibana.jsonc#L4 Assigned helpers due to elastic#164341 (call site) Assigned home due to elastic#103192 Assigned index_lifecycle_management due to elastic#116207 Assigned ingest_node_pipelines due to elastic#113783 Assigned kibana_overview due to https://github.com/elastic/kibana/blob/f00ac7a8a21463e6bb4a2784c3a3884f36c62900/x-pack/plugins/grokdebugger/kibana.jsonc#L4 Assigned management due to elastic#165705 Assigned painless_lab due to https://github.com/elastic/kibana/blob/main/x-pack/plugins/painless_lab/kibana.jsonc#L4 Assigned search_profiler due to elastic#195343 Assigned uptime due to https://github.com/elastic/kibana/blob/main/x-pack/plugins/observability_solution/uptime/kibana.jsonc#L4 Assigned lens due to elastic#175893 Assigned ml_anomaly_detection due to elastic#162126 Assigned canvas due to elastic#164376 Assigned cc replication due to elastic#149069 Assigned enterpise search due to elastic#79359 Assigned graph to due elastic#190797 Assigned license_management due to https://github.com/elastic/kibana/blob/main/x-pack/plugins/license_management/kibana.jsonc#L4 Assigned maps due to elastic#155161 Assigned observability due to https://github.com/elastic/kibana/blob/main/x-pack/plugins/observability_solution/observability/kibana.jsonc#L4 Assigned remote clusters due to elastic#96989 Assigned reporting due to elastic#121435 Assigned rollup_jobs due to https://github.com/elastic/kibana/blob/d57bc9a5d7d64f86b550eff7997605a3090aee9a/x-pack/plugins/rollup/kibana.jsonc#L4 Assigned watcher due to elastic#119717
## Summary Assign files within `x-pack/test/accessibility/apps/group[1|2|3]` ### Why I assigned them: Assigned advanced_settings due to #175255 Assigned dashboard_controls due to #190797 Assigned dashboard_links due to #174772 Assigned dashboard_panel_options due to #178596 Assigned grok_debugger due to https://github.com/elastic/kibana/blob/main/x-pack/plugins/grokdebugger/kibana.jsonc#L4 Assigned helpers due to #164341 (call site) Assigned home due to #103192 Assigned index_lifecycle_management due to #116207 Assigned ingest_node_pipelines due to #113783 Assigned kibana_overview due to https://github.com/elastic/kibana/blob/f00ac7a8a21463e6bb4a2784c3a3884f36c62900/x-pack/plugins/grokdebugger/kibana.jsonc#L4 Assigned management due to #165705 Assigned painless_lab due to https://github.com/elastic/kibana/blob/main/x-pack/plugins/painless_lab/kibana.jsonc#L4 Assigned search_profiler due to #195343 Assigned uptime due to https://github.com/elastic/kibana/blob/main/x-pack/plugins/observability_solution/uptime/kibana.jsonc#L4 Assigned lens due to #175893 Assigned ml_anomaly_detection due to #162126 Assigned canvas due to #164376 Assigned cc replication due to #149069 Assigned enterpise search due to #79359 Assigned graph to due #190797 Assigned license_management due to https://github.com/elastic/kibana/blob/main/x-pack/plugins/license_management/kibana.jsonc#L4 Assigned maps due to #155161 Assigned observability due to https://github.com/elastic/kibana/blob/main/x-pack/plugins/observability_solution/observability/kibana.jsonc#L4 Assigned remote clusters due to #96989 Assigned reporting due to #121435 Assigned rollup_jobs due to https://github.com/elastic/kibana/blob/d57bc9a5d7d64f86b550eff7997605a3090aee9a/x-pack/plugins/rollup/kibana.jsonc#L4 Assigned watcher due to #119717 Contributes to: #194817 --------- Co-authored-by: kibanamachine <[email protected]> Co-authored-by: Elastic Machine <[email protected]> Co-authored-by: Rodney Norris <[email protected]>
Please add a11y tests to Enterprise search UI in Kibana - for overview page, app search and workplace search.
Here are the documents which explain a11y testing - https://www.elastic.co/guide/en/kibana/master/development-tests.html#development-accessibility-tests
Here is the meta issue where you can find other test PRs: #51456
Please get in touch with @myasonik or @bhavyarm if you have questions about these tests.
The text was updated successfully, but these errors were encountered: