This script allows the local execution of robots that were built in the Ark Automate Web Application.
While calls from robotframeworks standard libraries work on Windows and MacOS, calls from the rpaframework like Excel.Application.Open Application
only work on Windows.
Because of missing security permissions we are currently not able to provide this version of the local client for MacOS. We recommend running it in a virtual machine instead.
Because of these factors, the local client for now is only supported to run on Windows.
To run the client first make sure of the following:
- node (at least v10) is installed
- robotframework is setup correctly, including the path variables!
- rpaframework (at least v9.6) is installed
To test this, try to execute a self written robot on your local machine using the cmd/bash/shell, for example robot ./path/to/myRobot.robot
.
Then you can proceed to:
- Clone this repository
git clone https://github.com/bptlab/ark_automate_local.git
- Change into the new directory
cd ark_automate_local
- Execute
npm install -g
- Start the script in the current directory by running
ark
The local client is the companion to the web application Ark-Automate. It registers on to a userId and awaits new robotJobs from this user to execute. As soon as it receives a new job via the socket.io connection, it executes the robot and sends live logs to the backend of Ark-Automate. The userId is set when running the local client for the first time or via the config.json
.
A special feature is the LiveLogsListener.py
which is an implementation of the Listener Interface provided by Robot Framwork. It reacts to the individual test cases run by executing the robot. A test case can be translated to one instruction element of the ssot. For each test case, information on the execution is written into the robotLogs.json
which is observed by the local client. Each change will result in sending the entire robotLogs.json
via the socketConnection to the backend, where it is further processed.