|
1 | 1 | # aria-at-automation-harness
|
2 | 2 |
|
3 |
| -A command-line utility for executing test plans from [w3c/aria-at](https://github.com/w3c/aria-at) without human intervention using [the aria-at-automation-driver](https://github.com/w3c/aria-at-automation-driver) |
| 3 | +A command-line utility for executing test plans from [w3c/aria-at](https://github.com/w3c/aria-at). It operates by communicating with an [AT Driver](https://github.com/w3c/at-driver) server and (in some environments) a [WebDriver](https://github.com/w3c/webdriver) server. |
4 | 4 |
|
5 | 5 | **[aria-at-automation](https://github.com/w3c/aria-at-automation)** · aria-at-automation-harness · [aria-at-automation-driver](https://github.com/w3c/aria-at-automation-driver) · [aria-at-automation-results-viewer](https://github.com/w3c/aria-at-automation-results-viewer)
|
6 | 6 |
|
7 |
| -## Tools |
| 7 | +## Usage instructions |
8 | 8 |
|
9 |
| -- `aria-at-harness-agent` - run tests individually read from an input stream |
10 |
| -- `aria-at-harness-host` - run a test plan, a collection of reference files and test files, read from a client |
11 |
| -- `aria-at-harness-client` - (coming soon) read a test plan from disk, run it in a host, report result to aria-at-app |
| 9 | +### Installation |
12 | 10 |
|
13 |
| -## `aria-at-harness-agent` |
| 11 | +1. Install the software under test |
| 12 | + - an assistive technology (currently limited to [the NVDA screen reader](https://www.nvaccess.org/about-nvda/) and [the VoiceOver screenreader](https://www.apple.com/accessibility/vision/)) |
| 13 | + - an [AT Driver](https://w3c.github.io/at-driver/) server for the assistive technology under test (e.g. [the NVDA AT Driver server](https://github.com/Prime-Access-Consulting/nvda-at-automation/) for NVDA or [macOS AT Driver server](https://github.com/bocoup/at-driver-servers) for VoiceOver) |
| 14 | + - a web browser (e.g. [Mozilla Firefox](https://mozilla.org/firefox), [Google Chrome](https://www.google.com/chrome/index.html), or [Apple Safari](https://www.apple.com/safari/)) |
| 15 | + - a WebDriver server for the browser under test (e.g. [GeckoDriver](https://github.com/mozilla/geckodriver) for Firefox or [ChromeDriver](https://developer.chrome.com/docs/chromedriver/downloads) for Chrome--this project does not currently require SafariDriver to test Safari) |
| 16 | +2. Install [Node.js](https://nodejs.org) |
| 17 | +3. Download ARIA-AT and build the tests: |
| 18 | + ``` |
| 19 | + $ git clone https://github.com/w3c/aria-at |
| 20 | + $ cd aria-at && npm install && npm run build |
| 21 | + ``` |
| 22 | +4. Download this project's source code and install its dependencies: |
| 23 | + ``` |
| 24 | + $ git clone https://github.com/w3c/aria-at-automation-harness.git |
| 25 | + $ cd aria-at-automation-harness && npm install |
| 26 | + ``` |
14 | 27 |
|
15 |
| -``` |
16 |
| -$ bin/agent.js --help |
17 |
| -agent.js |
18 |
| -
|
19 |
| -Run tests from input |
20 |
| -
|
21 |
| -Options: |
22 |
| - --help Show help [boolean] |
23 |
| - --version Show version number [boolean] |
24 |
| - --quiet Disable all logging |
25 |
| - --debug Enable all logging |
26 |
| - --verbose Enable a subset of logging messages |
27 |
| - --reference-base-url Url to append reference page listed in tests to |
28 |
| - [string] [default: "http://localhost:8000"] |
29 |
| - --web-driver-url [default: "http://localhost:4444"] |
30 |
| - --web-driver-browser [choices: "chrome", "firefox"] [default: "firefox"] |
31 |
| - --at-driver-url [default: "ws://localhost:4382"] |
32 |
| - --show-hidden Show hidden options [boolean] |
33 |
| -``` |
| 28 | +### Environment configuration |
| 29 | + |
| 30 | +1. Run the AT Driver server for the assistive technology under test |
| 31 | +2. Run the appropriate WebDriver server (if testing with Firefox or Chrome) |
| 32 | +3. Run the assistive technology under test |
34 | 33 |
|
35 |
| -## `aria-at-harness-host` |
| 34 | +### Execution |
| 35 | + |
| 36 | +With the required software in place and the environment correctly configured, |
| 37 | +the `host.js` command-line application can be used to run ARIA-AT test plans. |
| 38 | +Execute the following command to review the available arguments: |
36 | 39 |
|
37 | 40 | ```
|
38 | 41 | $ bin/host.js run-plan --help --show-hidden
|
39 |
| -host.js run-plan [plan-files..] |
40 |
| -
|
41 |
| -Run test plans |
42 |
| -
|
43 |
| -Positionals: |
44 |
| - plan-files Files in a test plan [array] [default: []] |
45 |
| -
|
46 |
| -Options: |
47 |
| - --help Show help [boolean] |
48 |
| - --version Show version number [boolean] |
49 |
| - --quiet Disable all logging |
50 |
| - --debug Enable all logging |
51 |
| - --verbose Enable a subset of logging messages |
52 |
| - --tests-match Files matching pattern in a test plan will be test |
53 |
| - ed [string] [default: "{,**/}test*.json"] |
54 |
| - --reference-hostname [default: "localhost"] |
55 |
| - --plan-workingdir Directory "plan-files" are relative to |
56 |
| - [default: "."] |
57 |
| - --plan-protocol [choices: "fork", "developer"] [default: "fork"] |
58 |
| - --agent-web-driver-url [default: "http://localhost:4444"] |
59 |
| - --agent-web-driver-browser [choices: "chrome", "firefox"] [default: "firefox"] |
60 |
| - --agent-at-driver-url [default: "http://localhost:4382"] |
61 |
| - --agent-protocol [choices: "fork", "developer"] [default: "fork"] |
62 |
| - --agent-quiet Disable all logging |
63 |
| - --agent-debug Enable all logging |
64 |
| - --agent-verbose Enable a subset of logging messages |
65 |
| - --agent-mock [boolean] |
66 |
| - --agent-mock-open-page [choices: "request", "skip"] |
67 |
| - --callback-url URL to POST test results to as they complete |
68 |
| - --callback-header Header to send with callback request |
69 |
| - --show-hidden Show hidden options [boolean] |
70 | 42 | ```
|
71 | 43 |
|
72 |
| ---- |
| 44 | +For example, to run ARIA-AT's "Horizontal slider" test plan using NVDA and |
| 45 | +Firefox, execute the following command in a terminal: |
| 46 | + |
| 47 | +``` |
| 48 | +$ node aria-at-automation-harness/bin/host.js run-plan \ |
| 49 | + --plan-workingdir aria-at/build/tests/horizontal-slider \ |
| 50 | + '{reference/**,test-*-nvda.*}' \ |
| 51 | + --agent-web-driver-url=http://127.0.0.1:4444 \ |
| 52 | + --agent-at-driver-url=ws://127.0.0.1:4382/session \ |
| 53 | + --reference-hostname=127.0.0.1 \ |
| 54 | + --agent-web-driver-browser=firefox |
| 55 | +``` |
73 | 56 |
|
74 |
| -### [aria-at-automation](https://github.com/w3c/aria-at-automation) |
| 57 | +## [aria-at-automation](https://github.com/w3c/aria-at-automation) |
75 | 58 |
|
76 | 59 | A collection of projects for automating assistive technology tests from [w3c/aria-at](https://github.com/w3c/aria-at) and beyond
|
77 | 60 |
|
|
0 commit comments