-
Notifications
You must be signed in to change notification settings - Fork 0
State Model and OrientDB instructions
TESTAR can infer a State Model while in a state s, it selects and executes an action a and obtains a new state s’. The transitions (s → a → s‘) are then stored in the model until the tool stops the exploratory process.
This model can be beneficial to visualize the action transitions, query the model and create offline oracles, or apply more intelligent action selection decisions as Reinforcement Learning (RL) strategies by remembering what states were discovered and which actions were executed.
![](https://user-images.githubusercontent.com/32359126/211304522-22d8b10a-71d0-44cb-bebf-41ce865fd617.png)
In XR systems, the TESTAR agent can navigate around the virtual environment to reach the interactive entities. Because the entities that the agent observes are determined by an observation range, the position of the agent, and potential blocking elements, the exploratory FTA TESTAR needs to explore the XR environments' navigable areas while storing the entities' positions to learn which are reachable.
For this reason, the TESTAR state model is being extended with the concept of NavigableState. The objective of this new NavigableState is to allow TESTAR to explore the navigable positions of the environment as it saves the information of which entities are reachable, then executes interactive actions defined as NavigableAction (e.g., open a door by interacting with a button), to continue with a new exploration of the available state positions.
This development is temporally implemented in a separate branch. After further research that generalizes the requirements that define the concepts of navigable action, navigable area, and an appropriate definition of abstraction, the development will be merged into the master branch.
https://github.com/iv4xr-project/TESTAR_iv4xr/tree/master-navigable-state
TESTAR uses orientdb graph database https://www.orientdb.org/ , to create TESTAR State Models. Detected Widgets, Actions, States and their respective relations are recorded to this graph database.
https://www.orientdb.org/download
Warning: Since August 2020 there is version 3.1.X of OrientDB, however TESTAR currently requires the use of versions 3.0.X
In order to use the State Model feature it's advised to install a graph database on your machine or in a remote server.
Follow the installation instructions about how to configure TESTAR State Model on slide 28:
https://testar.org/images/development/TESTAR_webdriver_state_model.pdf
Also TESTAR HandsOn (Section 6) contains more information about State Model settings:
https://testar.org/images/development/Hands_on_TESTAR_Training_Manual_2020_October_14.pdf
When orientdb is started the first time. The root password needs to be configured. Make sure you remember this password.
In order to use the graphdb feature. A database must be created in OrientDB. To do this follow the following procedure:
- Start the database server (ORIENTDB_HOME/bin/server.bat)
- Start orientdb studio in a webbrowser http://localhost:2480
- Choose "New DB" and provide the name, root user and password
- Go to Security tab and create a new user (testar/testar) with an active status and the admin role
OrientDB graph database can be used remotely or locally. Default TESTAR settings are predefined to connect with remote mode to a local OrientDB server:
StateModelEnabled = true
DataStore = OrientDB
DataStoreType = remote
DataStoreServer = localhost
DataStoreDB = testar
DataStoreUser = testar
DataStorePassword = testar
Also is possible to connect at file level without deploy the OrientDB locally:
OrientDB graph database can be use with the plocal connection to connect at file level.
Default TESTAR settings are predefined to connect with remote mode to a local OrientDB server:
StateModelEnabled = true
DataStore = OrientDB
DataStoreType = plocal
DataStoreDirectory = C:\\Users\\testar\\Desktop\\orientdb-3.0.34\\databases
DataStoreDB = testar
DataStoreUser = testar
DataStorePassword = testar
Also is possible to configure OrientDB connection using TESTAR GUI (State Model panel)