RobotKernel is a Robot Framework IPython kernel for Jupyter Notebook and JupyterLab. It powers RobotLab – the Robot Framework JupyterLab distribution. Check a video to see it in action and read the documentation.
RobotKernel requires Python 3.6 or later with setuptools 40.5.0 later and Robot Framework Robot Framework 3.1 or later.
For alternative Robot Framework IPython kernel, check out ipythonrobotframework or xeus-robot.
You can try RobotKernel instantly without installing it at MyBinder cloud:
- Launch JupyterLab with RobotKernel: https://mybinder.org/v2/gh/robots-from-jupyter/robotkernel/master?urlpath=lab/tree/example.ipynb
- Launch Jupyter Notebook with RobotKernel: https://mybinder.org/v2/gh/robots-from-jupyter/robotkernel/master?urlpath=tree/example.ipynb
Note: Log | Report -links on saved notebooks may not be clickable until notebook is "trusted" ("Trust Notebook" in JupyterLab Commands) the related cells have been executed again.
RobotKernel can be installed using the usual Python package manager tools, like pip:
$ pip install robotkernel
For JupyterLab it is recommended to also install the Robot Framework syntax highlighting and Jupyter widgets support:
$ jupyter labextension install jupyterlab_robotmode
$ jupyter labextension install @jupyter-widgets/jupyterlab-manager
For some environments it might be required to run the following command to manually register robotkernel as an available Jupyter kernel:
$ python -m robotkernel.install
It is possible to export Robot Framework Jupyter notebooks to regular plain text .robot
files for usage without Jupyter:
$ jupyter nbconvert --to script example.ipynb
RobotKernel installs a script named nbrobot
. It can be used instead of Robot Framework's robot
test runner to execute Robot Framework with .ipynb
-extension support:
$ nbrobot example.ipynb
Create and activate a new Python virtual environment:
$ venv myenv
$ source myenv/bin/activate
Install Jupyter:
$ pip install --upgrade pip setuptools
$ pip install jupyter
Clone this kernel:
$ git clone https://github.com/robots-from-jupyter/robotkernel.git
$ cd robotkernel
Install the kernel into the virtualenv in develop mode:
$ python setup.py develop
$ python -m robotkernel.install
Launch the jupyter:
$ jupyter notebook
Reloading the kernel reloads the code.
Learn more about Jupyter kernel development.
This repository includes an opinionated environment for running and developing RobotKernel with Nix with Cachix-powered binary cache.
Launch Jupyter Notebook with RobotKernel:
$ nix-shell -E 'import (fetchTarball https://github.com/robots-from-jupyter/robotkernel/archive/master.tar.gz + "/shell.nix")' --run "jupyter notebook"
Launch JupyterLab with RobotKernel:
$ nix-shell -E 'import (fetchTarball https://github.com/robots-from-jupyter/robotkernel/archive/master.tar.gz + "/shell.nix")'
$ jupyter labextension install jupyterlab_robotmode --app-dir=.jupyterlab
$ jupyter lab --app-dir=.jupyterlab
$ exit
Add --arg vim true
to enable vim bindings.
Open development environment with Nix:
$ git clone https://github.com/robots-from-jupyter/robotkernel.git
$ cd robotkernel
$ nix-build setup.nix -A env # to generate ./result/bin/python for IDE
$ nix-shell setup.nix -A develop