guidepup / setup

Setup your environment for screen reader test automation.
https://guidepup.dev
MIT License
5 stars 2 forks source link

MacOS: VoiceOver Utility - "Verbosity -> Hints -> Speak instructions" enabled by default #30

Open nmerget opened 2 months ago

nmerget commented 2 months ago

"Verbosity -> Hints -> Speak instructions" enabled by default

Setup:

Details

@cmorten @jlp-craigmorten, first of all, thanks for your work :)

We are testing guidepup and there is some option for voiceOver which might be a little bit annoying. You can see it here the output is:

["Label. You are currently on a text element, inside of web content. To exit this web area, press Control-Option-Shift-Up Arrow.","Label (Default) Basic edit text. You are currently on a text field, inside of web content. To enter text in this field, type. To exit this web area, press Control-Option-Shift-Up Arrow."]

The default voiceOver config enables speak instructions for items ("You are currently on a text element, inside of web content. To exit this web area, press Control-Option-Shift-Up Arrow"). It would be great if we could optin/out the checkbox under VoiceOver Utility - "Verbosity -> Hints -> Speak instructions" on our CI, maybe like this:

      - name: 🦮 Guidepup Setup
        uses: guidepup/setup-action@0.15.x
        with:
          enableSpeakInstructions: false
jlp-craigmorten commented 2 months ago

Hey @nmerget 👋

I'm tempted to suggest this is more something for the https://github.com/guidepup/guidepup project - hope for setup is that it is a minimal environment setup to allow for automation, but otherwise all AT settings eventually should be configurable as part of the core guidepup package (appreciate some stuff is currently done by this package - one to look to change IMO).

To potentially unblock you for now, have you tried using the capture: "initial" option for the voiceOver.start({ ... }) command?

REF: https://www.guidepup.dev/docs/api/class-command-options#command-options-capture

Setting this verbosity setting feels relevant to https://github.com/guidepup/guidepup/issues/75 where it would be good to expose the ability to fully configure your AT as required.

nmerget commented 2 months ago

I will try it with capture: "initial". Thank you

For now, it's fine, I will add a workaround to filter the snapshot output in the CI.

It makes sense to add it to add a config for the screen readers. A "config" will execute commands in the shell like this right?

jlp-craigmorten commented 2 months ago

A "config" will execute commands in the shell like this right?

Yeah that kind of thing - see https://github.com/guidepup/guidepup/blob/main/src/macOS/VoiceOver/configureSettings.ts which is probably what would look to consolidate on, and then expose the ability to configure rather than have this hardcoded.