Real Names¶
Real names always start and end with a curly brace, for example
{"type": "CMainWindow", "visible": 1, "windowTitle": "xyz"}
.Real names contain the type and any number of properties and their values of the object that they are meant to identify; so
{"type": "CMainWindow", "visible": 1, "windowTitle": "xyz"}
" describes an object of type "CMainWindow", which must be visible and which has a window title of "xyz".You can assemble real names at script runtime easily and without limitation.
Real name inside of a test script:
Symbolic Names¶
Symbolic names start with 'names.' by default, for example
names.xyz_CMainWindow
.⚠️ Symbolic names are always only ever used to look up their associated real names in the object map. Once the real name has been looked up it is being used to find the object (and not the symbolic name!).
⚠️ If a symbolic name cannot be found in the object map a runtime error will occur.
The contents of symbolic names are without any meaning (!). Their only purpose is to uniquely identify an entry/line inside the file
"<TEST_SUITE_DIR>/shared/names.*"
.You can assemble symbolic names at script runtime, but the assembled symbolic object name must already exist in the object map file (!).
Symbolic name inside of a test script:
Example "<TEST_SUITE_DIR>/shared/names.js"
content with an entry for "names.xyz_CMainWindow
":
xyz_CMainWindow={"type": "CMainWindow", "visible": 1, "windowTitle": "xyz"}