Most actions are performed on repository items, which in turn represent UI elements. Actions are managed in the actions table, while repository items are managed in the repository. They are therefore separate but closely linked to each other.
This chapter explains the relationship between actions and repository items and shows how Ranorex combines what to do (actions) with where to do it (repository items).
If you’re not yet familiar with action types, see Basic and smart actions. For an overview of repositories and repository items, see Repository basics.
Actions and the actions table
Actions are managed in the actions table of a recording module in the Recorder view. The actions table lists all actions in the order in which they will be executed and shows, among other things, the linked repository item for each action.
UI elements and repository items
Repository items are representations of UI elements. Ranorex uses repository items to store and describe the structure of a UI and to access it. This way, Ranorex can perform actions on repository items and, consequently, on UI elements.
Repository items are stored and managed separately from actions in the repository in the Recorder view. Repositories are organized in a folder-like hierarchy.
For example, look at the welcome screen of the Ranorex Demo Application. Each UI element is represented by a repository item. Note how the items are organized in the repository.
Actions and repository items
Repository items by themselves don’t do anything. It’s only when they are linked to actions that they fulfill their function.
While there are a few actions that can’t be linked to repository items, such as the Run application action, the majority of actions can and in most cases should be linked to a repository item. Imagine that you had a Key sequence action that wasn’t linked to a repository item: the key sequence would always be entered in whatever field happened to be in focus at the moment. This would make your test unreliable and hard to maintain.
Actions tell Ranorex what to do; repository items tell it where in the UI to do it.
The image below illustrates the link between a Mouse click action and a repository item representing a button.
- Action: Action 4 is a mouse click on a UI element, the Submit button. This action requires a link to the repository item that represents this button.
- Repository item: The repository item BtnSubmitUserName represents a UI element, the Submit button. Whenever an action should be carried out on this button, this repository item is invoked.
- Link between an action and a repository item: The link between the action and the UI element is established through the corresponding repository item. This is indicated in column 6 of the action, where the repository item is referenced.