Skip to main content

robotframework-ibmmq

Robot Framework keywords for IBM MQ — powered by the ibmmq Python package.

This library is a thin, explicit Robot Framework wrapper around the ibmmq Python package. It does not abstract away IBM MQ complexity — and that is by design.

If you use this library, you are using real IBM MQ, with real native dependencies, exactly like production.


What this library is (and is not)

✅ IS

  • A Robot Framework library for connecting to IBM MQ
  • A wrapper around the ibmmq Python package
  • Designed for real integration testing, not mocks or file-based substitutes

❌ IS NOT

  • A pure-Python library
  • A “just pip install and go” solution
  • A fake or simulated MQ implementation

If you are looking for something that avoids native dependencies, this library is not for you.


🚨 Read this first: IBM MQ prerequisites are mandatory

This library directly depends on ibmmq, which is a Python extension module backed by IBM MQ native libraries.

If ibmmq does not work on your machine, this Robot Framework library will not work either.

Before you do anything else, you must read and follow the official ibmmq prerequisites:

👉 Official ibmmq prerequisites (REQUIRED):
https://github.com/ibm-messaging/mq-mqi-python?tab=readme-ov-file#prerequisites

In practical terms, this means:

You must have, on the machine where tests run:

  • ✅ IBM MQ C Client
  • ✅ IBM MQ SDK
  • ✅ A working C/C++ build toolchain
  • ✅ Correct environment variables (e.g. MQ_FILE_PATH if MQ is not installed in the default location)

If any of the above is missing, you will see errors such as:

  • ModuleNotFoundError: No module named 'ibmmqc'
  • DLL load failures
  • Import errors during pip install or at runtime

These are environment issues, not bugs in this library.


Platform notes

  • ✅ Windows: Supported
  • ✅ Linux: Supported
  • ❌ No native MQ installation = no support

On Windows, a proper Visual C++ build environment is required, because ibmmq includes native extensions.


Installation

Step 1 — Verify ibmmq works first (strongly recommended)

python -c "import ibmmq; print('ibmmq OK')"

If this fails, stop here and fix your IBM MQ / ibmmq installation first.

Step 2 — Install this library

pip install robotframework-ibmmq

No magic. No hidden installers.


Usage example

*** Settings ***
Library    MQLibrary

*** Test Cases ***
Connect to IBM MQ
    Connect MQ
    ...    queue_manager=QM_EXAMPLE
    ...    hostname=mq.example.internal
    ...    port=1414
    ...    channel=SYSTEM.ADMIN.SVRCONN
    ...    username=${NONE}
    ...    password=${NONE}

    Disconnect All MQ Connections

This connects to a real queue manager using a real MQ channel.


MQ administration notes

If required:

  • Ensure the MQ channel exists and is running
  • Ensure the MQ listener is active
  • Common admin channel: SYSTEM.ADMIN.SVRCONN

Use IBM MQ Explorer or platform tooling to manage this.


Troubleshooting

Errors mentioning ibmmqc, DLL load failures, or missing shared libraries are IBM MQ / ibmmq environment problems.

Re-check:

  • IBM MQ installation
  • ibmmq prerequisites
  • Environment variables
  • 32-bit vs 64-bit mismatches

Official reference: https://github.com/ibm-messaging/mq-mqi-python?tab=readme-ov-file#prerequisites


Acknowledgements ❤️

Special thanks to UWV for sponsoring, supporting, and open-sourcing this library.

By funding real-world test tooling and releasing it as open source, UWV has contributed back to the broader Robot Framework and IBM MQ communities.

Metadata

Release files for robotframework-ibmmq 0.1.4

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-ibmmq 0.1.4
File Size Uploaded
robotframework_ibmmq-0.1.4.tar.gz 6.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for robotframework-ibmmq 0.1.4
File Interpreter ABI Platform
robotframework_ibmmq-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 14.6 kB

Release files / robotframework_ibmmq-0.1.4.tar.gz

Download URL robotframework_ibmmq-0.1.4.tar.gz
Size 6.7 kB
Tags Source
SHA-256 checksum
How to use checksums
ab76e35bcd0cc6dcf872d2465788d02b1687089f24382600ffc7c5a9b2107e7b
BLAKE2b-256 checksum
How to use checksums
ef71a153b8d5240cb4b1b325f58837e823c9dbdab1dc955d17fc253696eb7b6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / robotframework_ibmmq-0.1.4-py3-none-any.whl

Download URL robotframework_ibmmq-0.1.4-py3-none-any.whl
Size 7.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3ae39fc560b75dbcda6977f07b174f9e1dc32eea70fa1f0a812e3fb555d82c61
BLAKE2b-256 checksum
How to use checksums
d1b35543c76b0cb47143d283ffc871c36d7ba204848ab51c82fd2673e0239e7f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.4 This release

2 release files

0.1.3

2 release files

0.1.2

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