Skip to main content

Robotmk Bridge

The bridge between automation islands and your monitoring

Robotmk Bridge is a Robot Framework library, listener, and CLI that for external test tools to convert their results into Robot Framework results.

It is used in two modes:

  • As Python Package, e.g. in the Robotmk Bridge Agent Plugin
  • As a Robot Framework Library to run external test tools from Robot Framework tests.

In both cases, the goal is to integrate any test results into Checkmk monitoring with the help of Robotmk.

Features

  • Unifies third-party test results into the Robot Framework XML format
  • Conversion is done by Handlers,
  • Robot Framework 6.x and 7.x supported
  • Working modes
    • Use as a library rmkbridge.RobotmkBridgeLibrary plus the listener rmkbridge.listener
    • Convert existing results via CLI (python -m rmkbridge)

Installation

pip install robotframework-robotmk-bridge

Prerequisites

To verify the installation:

python -m rmkbridge --version

Quickstart

Option 1: Use as a Library to execute Test tools from Robot Framework

This mode consists of two steps:

  1. Running the tool in Robot Framework via Run keyword
  2. Running the Bridge-Listener

1.1: Running the tool directly in Robot Framework

Each supported external test tool comes with a special trigger keyword Run <tool> to run the tool from inside Robot Framework. Depending on the Handler, the keywords support individual arguments.

*** Settings ***
Library    rmkbridge.RobotmkBridgeLibrary

*** Test Cases ***

# runs a JUnit test
JUnit unit tests should pass
    Custom Keyword 1
    Run JUnit    path/to/results.xml    java -jar junit.jar --reports-dir path/to
    Custom Keyword 2

# runs a Gatling test
Gatling regression should stay green
    Custom Keyword 1
    Run Gatling    path/to/gatling.log    ${GATLING_HOME}/bin/gatling.sh --simulation MySimulation
    Custom Keyword 2

# Runs a ZAP test

ZAP scan finds no blockers
    Custom Keyword 1
    Run Zap    path/to/zap.json    python zap_scan.py
    Custom Keyword 2

1.2: Running the Listener

After the suite execution, run the suite with the Robotmk Bridge listener so the external reports are injected into the output:

robot --listener rmkbridge.listener tests/my_suite.robot

The listener then creates test results using the following rules:

  • Keywords before the trigger keyword are wrapped into a Test Setup keyword.
  • trigger keywords (which run the tools) become Test Cases.
  • Keywords after the trigger keyword are wrapped into a Test Teardown keyword.

Note: you should use only 1 trigger keyword per test case.

Option 2: Command Line Usage to convert existing results

💡 This is the mode used by the Robotmk Bridge Plugin for Checkmk.

Use the CLI when you need to convert tool reports without running Robot Framework suites:

python -m rmkbridge rmkbridge.junit --result-file path/to/results.xml
  • The converted file gets created next to the source as *_robot_output.xml.
  • Similar to trigger keywords, each handler also exposes its own CLI flags. List them with python -m rmkbridge rmkbridge.junit --help.
  • Global switches:
    • python -m rmkbridge --print-config
    • python -m rmkbridge --add-config path/to/custom_handler.yml
    • python -m rmkbridge --reset-config

Keyword Documentation

  • Open the generated keyword reference

  • Regenerate locally when you add handlers:

    python -m robot.libdoc rmkbridge.RobotmkBridgeLibrary docs/RobotmkBridgeLibrary-$(python -c "import rmkbridge; print(rmkbridge.VERSION)").html
    

🤝 Contribute Your Own Handlers!

Robotmk Bridge is an open-source project — and we’d love to see it grow with the help of the community!

With a growing number of handlers, our goal is to make Robotmk a truly multi-purpose integration layer for all kinds of test results.

If you’re working with a testing tool that isn’t supported yet, consider developing your own Bridge Handler and sharing it with others.

Every new handler expands what Robotmk can do and helps bring monitoring and test automation even closer together.

Pull requests, discussions, and ideas are always welcome!

Read more:

License & Acknowledgements

RobotmkBridge stands on the shoulders of giants: the project robotframework-oxygen, written by Eficode Oy, Finland 🇫🇮.

See ACKNOWLEDGEMENTS.md for the roots of the project and credits.

Released under the MIT License.

Metadata

Release files for robotframework-robotmk-bridge 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for robotframework-robotmk-bridge 0.5.0
File Size Uploaded
robotframework_robotmk_bridge-0.5.0.tar.gz 26.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for robotframework-robotmk-bridge 0.5.0
File Interpreter ABI Platform
robotframework_robotmk_bridge-0.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 59.4 kB

Release files / robotframework_robotmk_bridge-0.5.0.tar.gz

Download URL robotframework_robotmk_bridge-0.5.0.tar.gz
Size 26.2 kB
Tags Source
SHA-256 checksum
How to use checksums
0f6a35c30560ab49f135127b6008d7e7d04328b321a99cf0bb65ce31977b4663
BLAKE2b-256 checksum
How to use checksums
09af0678af0aa4968c765c93e912bfc6194bb68c3a73ae74a99418405fdcad6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 25, 2026.

Transparency log

Release files / robotframework_robotmk_bridge-0.5.0-py3-none-any.whl

Download URL robotframework_robotmk_bridge-0.5.0-py3-none-any.whl
Size 33.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4fb902035d445c36bc0605599426ce94ea69c71e1eb992f10ea4aceafde0fe55
BLAKE2b-256 checksum
How to use checksums
e1d39e06963fe35e0f44402744bcd0551b9f9372da4207d7408c0499778646a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 25, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.5.0 This release

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page