Introduction The Voice Controlled Accessibility and Testing (VCAT) tool is primarily aimed to help users perform the following tasks: Navigate the web using voice commands, and Automatically generate Java-Selenium test cases. VCAT is a browser extension that runs in the chrome browser. The tool waits for the user to speak into the microphone and provide commands, and executes those commands on the currently opened web page. The following are requirements in order for VCAT to work properly: A working microphone is connected to the computer. After following the installation instructions below, the VCAT options page will automatically open every time the chrome browser is launched. Note - the VCAT options tab must be kept open at all times in order for VCAT to accept and execute voice commands. In case the options page is closed, then click on the VCAT icon next to the address bar on the browser and then click on options. When the VCAT tool is installed for the first time, the browser requests permission to access your microphone. You must click "Allow", to let the tool access your microphone. As noted, the VCAT tool executes the commands that are given by the user on the currently active tab. What to do if VCAT is unresponsive or not able to recognize voice commands? Reducing all background noise will significantly help increase the VCAT tools' voice recognition efficiency. If at any point in time VCAT becomes unresponsive, please close and relaunch the browser. VCAT Trigger word: The VCAT tool requires a predefined trigger word before each voice command. The trigger word is Computer. Please use "Computer" before each command listed below. List of commands available on the VCAT tool The VCAT tool requires users to speak commands in a specific syntax, as explained below: Basic Browser operations: i. Open New Tab: Used to launch a new, blank tab. ii. Open : Used to launch the url provided in the command on the current tab. Example: open google dot com to launch "google.com". iii. Refresh | Refresh Web Page: Used to refresh the current tab. iv. Go Back: Used to trigger the back button click on the current tab v. Go Forward: Used to trigger the forward button click on the current tab. vi. Close Tab: Used to close the current tab. Scrolling through the web page: i. Scroll Page Up: Used to scroll the web page up by one screen. ii. Scroll Page Down: Used to scroll the web page down by one screen. iii. Scroll Page to Top: Used to scroll the web page to the top. iv. Scroll Page to End: Used to scroll the web page to the bottom. Select Command: The select command is used to highlight a specific element on the web page. There are two types of possible select operations on the web page: i. Select all : This is used to select all of the elements on the web page of a particular type. The following types of elements are recognized by VCAT: a. Links : Link b. Text boxes : Text box c. Buttons : Button d. Check boxes : Check box e. Combo boxes : Combo box Example usage: Select all Links, Select all Buttons, Select all Text Boxes ii. Select Number 'number': Once the elements have been selected, they will be numbered. This command is used to select an element on which the user wants to trigger further action. Example: Select number 1 iii. Deselect: Can be used to deselect all selected elements on the page. Click Command: The click command is used to click specific element on the web page. There are two types of possible click operations on the web page: i. Click on number : The command is used along with the select all command. Used to issue a click command to any selected element on the web page. Example: Click on Number 5. ii. Click on : Used to click a element that can be identified by an associated label on the web page. Labels described by the aria tags can also be used in this command. Example : Click on Home. Set/Enter Command: This command is used to fill up text boxes on the web page and can be done in the following ways: i. Set As : Used to set the value of the element identified by the label on the web page, to the given value. Example: Set Search As Java. Here, Search is the label of the text box, and Java is the value you want entered. ii. Enter Value : Used to set the value of the selected text box to the given value. Example of steps to enter text into a text box: a. Select All Text Boxes. b. Select Number 5. c. Enter Value “Java selenium”. iii. Enter Value Hash : Used to set the value of the currently selected text box, to the value of the key defined in the VCAT configuration page. If the given key in the command is not found in the configuration page, then the command is ignored. Example of steps to use Hash Values: a. Select All Text Boxes. b. Select Number 5. c. Enter Value Hash UserName (note - in this example, UserName was predefined as a key-value pair in the configurations page.) Generate Selenium Test Case A selenium test case will be generated with the sequence of commands instructing the VCAT as follows: i. Generate Test Case: This will turn on the test case generation mode of the tool. All of the successful voice commands will be recorded to be used in the test case generation. ii. Complete Test Case: This will turn off the test case generation mode of the tool. a. Now the VCAT tool will continue to accept voice commands and execute them on the web page, but no steps are recorded. The Commands that have been recorded up until stop the test case, will be submitted to the VCAT service. b. Once the VCAT service generates the test case and responds back to the VCAT tool, the generated source code is displayed on the browser in an overlaying message dialog box. iii. Close Message: Used to close the message dialog overlay from the previous step. VCAT Configuration Page specific commands: Add Row: Used to add a new row to the auto-complete configuration table. Save: Used to save the changes made on the auto-complete configuration table. Delete Row : Used to delete the entry in the auto-complete configuration table identified by its row number. Select Key Number : Used to select the key of the row in the auto-complete configuration table identified by the row number. Select Value Number : Used to select the value of the row in the auto-complete configuration table identified by the row number. Expand Auto Complete Configuration: Used to expand the autocomplete section. Auto Complete Configuration In situations where text values containing non-natural English language words, the Auto Complete Configuration section can be used as an alternative. The auto complete entries are identified by "key"-"value" pairs, and can be added or removed per the users needs. The "key" denotes the reference to the text and the "value" denotes its value. The Auto Complete Configuration section can also be used to easily enter repetitive values, such as addresses, names, frequently used words. Note: In order for the auto complete to work, the key must be a natural English word. For example, assume a user has a username, such as "user_12name". The value "user_12name" is a non-natural English word, and would not be recognized by the speech recognition component. Therefore, the auto complete configuration section can be used, to create a key-value pair, where the Key is the word "Username", and the value is "user_12name". To reference this entry while completing a text field, the key must be referenced as hash . For example : Enter Value Hash Username. This command will set the selected text field value to "user_12name".