Skip to content

TESTAR iv4xr plugin extension

Fernando Pastor edited this page Nov 15, 2022 · 6 revisions

iv4XR State

SUT process

  • LabRecruitsProcess allows TESTAR to indicate how to connect with the LabRecruits system. This class implements the functionality to run the SUT with graphics or with the server mode, executing the SUT process and loading the environment, level, and test agent.
  • SpaceEngineersProcess allows TESTAR to indicate how to connect with the Space Engineers system. This class implements the functionality to launch the game with a desired or connect to an existing running level by using the process name and starting the SE controller.

IV4XR Element

  • IV4XRElement class represents the properties of the elements that TESTAR will find in the XR systems. The main class contains generic XR properties and a small set of LabRecruits properties.
  • SeElement class is an extension that contains a larger set of SE properties.

IV4XR Widget Entity

IV4XRWidgetEntity class maps the hierarchy between widgets and implements the Taggable setter and getter methods.

IV4XR State

  • IV4XRState class associates the IV4XRtags of the widgets with the IV4XRElement properties. The main class associates the generic XR tags and a small set of LabRecruits tags.
  • SeState class is an extension that associates a larger set of SE tags.

IV4XR State Fetcher

  • LabStateFetcher contains the functionality to fetch the LabRecruits State by observing the environment and creating the IV4XR Elements and Widgets.
  • SeStateFetcher contains the functionality to fetch the SE agent information and determine if SE needs to fetch the gameplay or terminal information.
  • SeGamePlayFetcher fetches the SE blocks information and creates the IV4XR Elements and Widgets.
  • SeStateFetcher fetches the SE terminal information and creates the IV4XR Elements and Widgets.

TESTAR_iv4xr_state_diagram

iv4XR Actions

Action Command

A basic command action is the most basic event that TESTAR can execute, e.g., move or rotate one step, equip a tool and start or stop using a tool.

  • MoveCommand classes contain the basic movement and rotation events.
  • InteractCommand classes contain the basic interaction-usage events.

Action Goal

An action goal executes a compound tactical action that contains several basic commands. For example, to interact with a SE block entity, TESTAR needs to rotate to aim the block, move to reach the block, equip a tool and start using this tool.

  • NavigateGoal classes contain decision-making using multiple commands and observations to navigate to the desired entity.
  • ToolUsageGoal classes contain decision-making using multiple commands and observations to execute a smart interaction using existing SE tools.

TESTAR_actions_iv4xr_diagram

Clone this wiki locally