<commit_before>!-BrowserTest-! defines a basic language (a DSL of sorts) to interact with a website via a browser. A heuristic is used to find elements using end user terms.
The language supported by !-BrowserTest-! is defined by its public methods, which can be used in combination with Slim's standard script verbs (e.g. check, ensure, reject, show).
This basic functionality will suffice for many tests, but can be extended by creating a custom subclass. 

The tests in this suite show example usage of this fixture:
>ScriptTest shows the basic functionality of !-BrowserTest-! to test websites.
>ScenarioTest takes this to the next level by using a parameterized script (i.e. scenario).
The >TableTemplateTest simplifies the parameterization of the script.
>CustomFixtureTest shows the usage of a custom subclass of !-BrowserTest-! to make test content more descriptive by encapsulating knowledge of the site's HTML in Java code.
>StoryboardTest shows a test where a screenshot is taken after each action. This is then combined with a scenario in >TemplateStoryboardTest.

!2 Language

The main commands/keywords (i.e. public methods) offered by !-nl.hsac.fitnesse.fixture.slim.web.BrowserTest-! are listed below.
The heuristic to find places tries a number of translations of end user terms to Selenium 'find' commands (e.g. is a full or partial label given, a link's or button's text, a placeholder). The first find that results in an element on the page is used by !-BrowserTest-!.

-|Comment|
|open <url>                                                        |opens the specified URL                                                                                                                          |
|click <place>                                                     |performs mouse click at the designated place (e.g. link/button/checkbox/radio button)                                                            |
|enter <value> as <input>                                          |clears the current value of an input and types the value                                                                                         |
|select <value> for <input>                                        |selects a value in the drop down box (or radio button)                                                                                           |
|press <key>                                                       |sends press of a key (e.g. Tab, Enter, Escape, Space, M) to browser                                                                              |
|clear <input>                                                     |removes the content in the input                                                                                                                 |
|take screenshot <name>                                            |stores the current browser's content as <name><unique>.png (used in combination with 'show' verb)                                                |
|value of <input>                                                  |retrieves the current value of the input (for use with 'check' verb or variable assignment)                                                      |
|page title                                                        |retrieves the current page's title (for use with 'check' verb)                                                                                   |
|wait for page title <title>                                       |performs a click and waits until a page with the specified title is shown                                                                        |
|wait for tag <tag name> with text <value>                         |waits until a page containing a tag with the specified text is shown                                                                             |
|wait for class <class name>                                       |waits until a page containing an element with the supplied CSS class is shown                                                                    |
|wait for class <class name> with text <value>                     |waits until a page containing an element with the supplied CSS class and specified text is shown                                                 |
|wait seconds <seconds>                                            |waits the specified number of seconds (e.g. for an animation to complete)                                                                        |
|is visible <place>                                                |whether specified place is visible in browser's window (used in combination with 'ensure' and 'reject')                                          |
|scroll to <place>                                                 |scrolls the designated place into view                                                                                                           |
|back                                                              |goes back 1 page in the browser's history (i.e. clicks browser's back button)                                                                    |
|forward                                                           |goes forward 1 page in the browser's history (i.e. clicks browser's forward button)                                                              |
|refresh                                                           |refreshes the current page (i.e. clicks the brower's refresh button)                                                                             |
|switch to next tab                                                |Switches the browser's window to the next tab                                                                                                    |
|switch to previous tab                                            |Switches the browser's window to the previous tab                                                                                                |
|close tab                                                         |Closes the current tab and switches the browser's window back to the previous one, if the browser has multiple tabs                              |
|tab count                                                         |How many tabs are open in the browser currently?                                                                                                 |
|current tab index                                                 |Which tab is currently displayed in the browser's window?                                                                                        |
|value of column number <columnIndex> in row number <rowIndex>     |retrieves the value from column number 'columnIndex' in row number 'rowIndex'                                                                    |
|value of <columnName> in row number <rowIndex>                    |retrieves the value from the column with header 'columnName' in row number 'rowIndex'                                                            |
|value of <columnName> in row where <selectColumn> is <selectValue>|finds the first row where the column with header 'selectColumn' is 'selectValue' and retrieves the value from the column with header 'columnName'|
|click <place> in row number <rowIndex>                            |clicks the button or link whose text matches 'place' in row number 'rowIndex'                                                                    |
|click <place> in row where <selectColumn> is <selectValue>        |finds the first row where the column with header 'selectColumn' is 'selectValue' and clicks the button or link whose text matches 'place'        |
|text by xPath <element xpath>                                     |retrieves the text of the first element found by evaluating the xPath against the current page's DOM                                             |
|text by class name <class>                                        |retrieves the text of the first element found with the specified class                                                                           |<commit_msg>Add documentation for enterAsInRowWhereIs()<commit_after>!-BrowserTest-! defines a basic language (a DSL of sorts) to interact with a website via a browser. A heuristic is used to find elements using end user terms.
The language supported by !-BrowserTest-! is defined by its public methods, which can be used in combination with Slim's standard script verbs (e.g. check, ensure, reject, show).
This basic functionality will suffice for many tests, but can be extended by creating a custom subclass. 

The tests in this suite show example usage of this fixture:
>ScriptTest shows the basic functionality of !-BrowserTest-! to test websites.
>ScenarioTest takes this to the next level by using a parameterized script (i.e. scenario).
The >TableTemplateTest simplifies the parameterization of the script.
>CustomFixtureTest shows the usage of a custom subclass of !-BrowserTest-! to make test content more descriptive by encapsulating knowledge of the site's HTML in Java code.
>StoryboardTest shows a test where a screenshot is taken after each action. This is then combined with a scenario in >TemplateStoryboardTest.

!2 Language

The main commands/keywords (i.e. public methods) offered by !-nl.hsac.fitnesse.fixture.slim.web.BrowserTest-! are listed below.
The heuristic to find places tries a number of translations of end user terms to Selenium 'find' commands (e.g. is a full or partial label given, a link's or button's text, a placeholder). The first find that results in an element on the page is used by !-BrowserTest-!.

-|Comment|
|open <url>                                                                |opens the specified URL                                                                                                                          |
|click <place>                                                             |performs mouse click at the designated place (e.g. link/button/checkbox/radio button)                                                            |
|enter <value> as <input>                                                  |clears the current value of an input and types the value                                                                                         |
|select <value> for <input>                                                |selects a value in the drop down box (or radio button)                                                                                           |
|press <key>                                                               |sends press of a key (e.g. Tab, Enter, Escape, Space, M) to browser                                                                              |
|clear <input>                                                             |removes the content in the input                                                                                                                 |
|take screenshot <name>                                                    |stores the current browser's content as <name><unique>.png (used in combination with 'show' verb)                                                |
|value of <input>                                                          |retrieves the current value of the input (for use with 'check' verb or variable assignment)                                                      |
|page title                                                                |retrieves the current page's title (for use with 'check' verb)                                                                                   |
|wait for page title <title>                                               |performs a click and waits until a page with the specified title is shown                                                                        |
|wait for tag <tag name> with text <value>                                 |waits until a page containing a tag with the specified text is shown                                                                             |
|wait for class <class name>                                               |waits until a page containing an element with the supplied CSS class is shown                                                                    |
|wait for class <class name> with text <value>                             |waits until a page containing an element with the supplied CSS class and specified text is shown                                                 |
|wait seconds <seconds>                                                    |waits the specified number of seconds (e.g. for an animation to complete)                                                                        |
|is visible <place>                                                        |whether specified place is visible in browser's window (used in combination with 'ensure' and 'reject')                                          |
|scroll to <place>                                                         |scrolls the designated place into view                                                                                                           |
|back                                                                      |goes back 1 page in the browser's history (i.e. clicks browser's back button)                                                                    |
|forward                                                                   |goes forward 1 page in the browser's history (i.e. clicks browser's forward button)                                                              |
|refresh                                                                   |refreshes the current page (i.e. clicks the brower's refresh button)                                                                             |
|switch to next tab                                                        |Switches the browser's window to the next tab                                                                                                    |
|switch to previous tab                                                    |Switches the browser's window to the previous tab                                                                                                |
|close tab                                                                 |Closes the current tab and switches the browser's window back to the previous one, if the browser has multiple tabs                              |
|tab count                                                                 |How many tabs are open in the browser currently?                                                                                                 |
|current tab index                                                         |Which tab is currently displayed in the browser's window?                                                                                        |
|value of column number <columnIndex> in row number <rowIndex>             |retrieves the value from column number 'columnIndex' in row number 'rowIndex'                                                                    |
|value of <columnName> in row number <rowIndex>                            |retrieves the value from the column with header 'columnName' in row number 'rowIndex'                                                            |
|value of <columnName> in row where <selectColumn> is <selectValue>        |finds the first row where the column with header 'selectColumn' is 'selectValue' and retrieves the value from the column with header 'columnName'|
|click <place> in row number <rowIndex>                                    |clicks the button or link whose text matches 'place' in row number 'rowIndex'                                                                    |
|click <place> in row where <selectColumn> is <selectValue>                |finds the first row where the column with header 'selectColumn' is 'selectValue' and clicks the button or link whose text matches 'place'        |
|enter <value> as <columnName> in row where <selectColumn> is <selectValue>|finds the first row where the column with header 'selectColumn' is 'selectValue' and enters 'value' in the column with header 'columnName'       |
|text by xPath <element xpath>                                             |retrieves the text of the first element found by evaluating the xPath against the current page's DOM                                             |
|text by class name <class>                                                |retrieves the text of the first element found with the specified class                                                                           |
{'fraction_non_alphanumeric': 0.042064669237614954, 'fraction_numerical': 0.0003559774547611985, 'mean_word_length': 0.931477025323708, 'pattern_counts': {'":': 0, '<': 77, '<?xml version=': 0, '>': 89, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 260, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5527397', 'n_tokens_mistral': 2679, 'n_tokens_neox': 2570, 'n_words': 1502}