# Custom

1. Custom Object can be used in the following scenarios:
   1. Objects which are dynamic in the web page (either position/visible text changes during execution).
   2. If object-specific Actions are not supported for the operations.
2. Custom object does not require scraping. These Actions can be used for all valid HTML tags (Textbox, Button, Link, Image, Div, Span), User should provide the appropriate tag name in the input: "Object Type\_Input".
3. **verifyExists** step is required before using @custom functionality. (This indicates the starting point for execution of custom Actions.)

**Input Syntax**: \<Object Type\_Input>; \<Visible Text>; \<index>; \<abs (optional)>

{% hint style="info" %}
**Note**:

1. If visible text is unique then the index should be 0 (default index). (For example: link;Click Next;0) This performs the action on the link that has unique visible text (Click Next).
2. In AUT, if there are multiple matches present for the visible text or if the visible text is not given in the input, then the user should provide index numbers appropriately.
   * Example 1: link;Next;2&#x20;
     * This action performs the 3rd link from the reference object that has the visible text (Next).
   * Example 2: link;;2
     * &#x20;This action performs on the 3rd link from the reference object.
3. In AUT, if there are multiple occurrences of the same text (For example: if input visible text given is 1, and there are other text fields containing 11, 21, 31, and so on.) and the need is to find the exact text specified, then the user has to provide an additional option of ‘abs’ as the last argument.
   * Ex: link;1;0;abs
   * Button;Submit Form;0;abs
     {% endhint %}

**Input Syntax Table**:

| **S.No** | **Object Type**                                              | **Object Type\_Input**                                 | **Visible Text**                                                                                                           |
| -------- | ------------------------------------------------------------ | ------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------- |
| 1        | Radiobutton                                                  | radio;; \<index>; \<abs (optional)>                    | Empty                                                                                                                      |
| 2        | Checkbox                                                     | checkbox;; \<index>; \<abs (optional)>                 | Empty                                                                                                                      |
| 3        | Dropdown                                                     | dropdown; \<visibleText>; \<index>; \<abs (optional)>  | Should be the value selected in the dropdown by default/empty. **Note:** All single selection objects come under dropdown. |
| 4        | Listbox                                                      | listbox; \<visibleText>; \<index>; \<abs (optional)>   | Should be the value selected in the list by default/empty. **Note**: All single selection objects come under the list.     |
| 5.1      | Table cell, Table                                            | tablecell; \<visibleText>; \<index>; \<abs (optional)> | Optional                                                                                                                   |
| 5.2      | Table cell, Table                                            | table;; \<index>; \<abs (optional)>                    | Empty                                                                                                                      |
| 6        | Textbox/search, email, password, number, url, file, textarea | textbox; \<visibleText>; \<index>; \<abs (optional)>   | Optional                                                                                                                   |
| 7        | Link                                                         | link; \<visibleText>; \<index>; \<abs (optional)>      | Tool tip/name of the link                                                                                                  |
| 8        | Image                                                        | img; \<visibleText>; \<index>; \<abs (optional)>       | Tool tip/optional                                                                                                          |
| 9        | Button, submit, reset                                        | button; \<visibleText>; \<index>; \<abs (optional)>    | Button name                                                                                                                |
| 10       | Valid html tags (Eg: span, div)                              | \<tag>; \<visibleText>; \<index>; \<abs (optional)>    | Optional                                                                                                                   |
| 11       | Grid                                                         | grid, \<visibleText>, \<index>; \<abs (optional)>      | Empty                                                                                                                      |
