Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. At first all the initialisation steps will be carried out like reading automatics properties, locking of the Device etc
  2. Then once the test case is identified as python, a new test execution flow will be triggered.
  3. In that flow Automatics Python wrapper script will be called from Automatics core using Java Process Builder, along with device details, and other necessary info for test case execution.
  4. Once the python wrapper script is invoked, it will scan for the directories in the jenkins job workspace to identify the Python scripts and its function which is annotated with the corresponding Automation ID
  5. On identifying the python script as well as the function that corresponding function is invoked by the python wrapper script and it will pass the Java DUT object to it.
  6. At this point the test case and its step execution will happen and result can be updated back to the automatics.
  7. From an User perspective there will not be any change in JAVA and PYTHON execution.

The below properties should be added to automatics properties before the test execution

# ========= Python TC Config =========== #
Python.exec.command=python3
Python.wrapper.script=automaticsPythonLib
Python.rdkb.exec.jar.name=rdkb-automation-0.0.1-SNAPSHOT.jar
Python.rdkv.exec.jar.name=rdkv-automation-0.0.1-SNAPSHOT.jar
Python.script.checkout.folder.name=automaticsPythonTest

PropertyDescription
Python.exec.commandThis property holds the python command available in jenkins vm for executing python test scripts
Python.wrapper.scriptThis is the name of Automatics python Library which contains the wrapper scripts. It is named as "automaticsPythonLib"
Python.rdkb.exec.jar.nameThis is the name of the RDKB jar file name which will be used for test execution. 
Python.rdkv.exec.jar.nameThis is the name of the RDKV jar file name which will be used for test execution. 
Python.script.checkout.folder.nameThis is the property which holder the name of the folder in which your python test case will be cloned