GitHub Action to set up your environment for screen reader automation.
It enables automation for VoiceOver on MacOS and NVDA on Windows using the @guidepup/setup
package.
Just add this step to your workflow(s) to enable steps that use screen reader automation in GitHub CI:
- name: Setup Environment
uses: guidepup/setup-action
If you are encountering errors in CI for MacOS you can pass a record
option which will output a screen-recording of the setup to a ./recordings/
directory:
- name: Setup Environment
uses: guidepup/setup-action
with:
record: true
There are also options to change the screen resolution:
- name: Setup Environment
uses: guidepup/setup-action
with:
resolutionWidth: "1920"
resolutionHeight: "1080"
If updating the TCC.db is not possible (due to SIP) or required you can skip the database update step by passing a ignoreTccDb
option:
- name: Setup Environment
uses: guidepup/setup-action
with:
ignoreTccDb: true
Note
If the necessary permissions have not been granted by other means, using this flag may result in your environment not being set up for reliable screen reader automation.
When running on windows a portable NVDA instance compatible with Guidepup will be installed to a temporary directory by default. The location of this installation directory is stored in the Windows registry under the key HKCU\Software\Guidepup\Nvda
.
If you want to specify the directory that NVDA is installed to you can pass a nvdaInstallDir
option:
- name: Setup Environment
uses: guidepup/setup-action
with:
nvdaInstallDir: <NVDA_INSTALLATION_DIRECTORY>
and more!
Check out some of the other Guidepup modules:
@guidepup/guidepup
- Reliable automation for your screen reader a11y workflows through JavaScript supporting VoiceOver and NVDA.@guidepup/playwright
- Seamless integration of Guidepup with Playwright.@guidepup/virtual-screen-reader
- Reliable unit testing for your screen reader a11y workflows.@guidepup/jest
- Jest matchers for reliable unit testing of your screen reader a11y workflows.