Robot Framework - ConfluentKafkaLibrary
ConfluentKafkaLibrary library is a wrapper for the confluent-kafka-python.
ConfluentKafkaLibrary is compatible with the latest version of confluent-kafka-python, where the library versions have a 1:1 correspondence (e.g., ConfluentKafkaLibrary 2.9.0 corresponds to confluent-kafka-python 2.9.0). Bug fixes and updates are denoted by a post-release identifier, such as 2.9.0.post1.
Documentation
The keyword documentation for ConfluentKafkaLibrary can be found here
To generate the documentation, use the following command:
python -m robot.libdoc -f html src/ConfluentKafkaLibrary docs/index.html
Installation
To install the library, run the following command:
pip install robotframework-confluentkafkalibrary
Extra packages:
-
[avro]=['fastavro >= 1.3.2', 'avro >= 1.11.1'] -
[json]=['jsonschema >= 3.2.0', 'pyrsistent >= 0.20.0'] -
[protobuf]=['protobuf >= 4.22.0', 'googleapis-common-protos >= 1.66.0'] -
[schemaregistry]=['httpx>=0.26', 'cachetools >= 5.5.0', 'attrs >= 24.3.0'] -
To install all dependencies use
[all]extension like:
pip install robotframework-confluentkafkalibrary[all]
Usage
In most cases, you can refer to the confluent-kafka-python documentation for guidance. Every keyword in ConfluentKafkaLibrary is designed to match the corresponding Python functions. If you are unsure about the pre-configured keywords, please visit the robotframework-ConfluentKafkaLibrary documentation. The Kafka team maintains the up-to-date documentation for configuration properties and their values here.
- You can find basic usage examples in the ./examples/test.robot
- For more complex examples, such as handling byte data from a topic, using multiple consumers, or running threaded avro consumers, please refer to the documentation.
Testing
- The library is tested using black-box tests written in Robot Framework.
- You can find the test files in the examples/ directory directory.
- For testing, a dockerized enterprise Kafka platform with schema registry support and REST proxy is used. The platform is deployed and tested for each pull request and merge to the master branch.
- See docker-compose.yml file with the necessary configuration.
- Tests are divided into the following files:
- test.robot - Basic tests to verify functionality of the Consumer and Producer.
- test_adminclient.robot - Verifications of admin client functionality.
- test_avro.robot - Verifications of avro and serializers functionality.
- Not executable example of oauth usage can be found here
- Update of deployment https://github.com/robooo/robotframework-ConfluentKafkaLibrary/issues/21 is required.
- The core testing logic involves producing data to Kafka, connecting one consumer in a thread, and working with the results in specific test cases.
Known Limitations:
- Unable to install robotframework-confluentkafkalibrary on Amazon EC2 graviton instance type
- see the steps to resolve
Release files for robotframework-confluentkafkalibrary 2.12.2.post1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| robotframework_confluentkafkalibrary-2.12.2.post1.tar.gz | 17.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| robotframework_confluentkafkalibrary-2.12.2.post1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 35.0 kB
Release files / robotframework_confluentkafkalibrary-2.12.2.post1.tar.gz
| Download URL | robotframework_confluentkafkalibrary-2.12.2.post1.tar.gz |
|---|---|
| Size | 17.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e8fbfe8951afc47f6a72b97624afb47eeaedb78f26636d72bd46ede658bdf1f2
|
|
BLAKE2b-256 checksum How to use checksums |
d84f7c728bf12a9e16776eca13136f9ad85487d971014644c4460ea8eda6b068
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / robotframework_confluentkafkalibrary-2.12.2.post1-py3-none-any.whl
| Download URL | robotframework_confluentkafkalibrary-2.12.2.post1-py3-none-any.whl |
|---|---|
| Size | 17.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6ea7a6d147ea37497ad9b443d0a3ee0b3efa5fb876931a029bf962fde2225918
|
|
BLAKE2b-256 checksum How to use checksums |
3d05992012d682f83db574b631be087ae8469557835da7632667f8b502764bf8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|