{"repo":"rcardin/kafkaesque","free":true,"listed":false,"github":"https://github.com/rcardin/kafkaesque","clone":"git clone https://github.com/rcardin/kafkaesque.git","description":"A testing 🧰 library for Kafka-based applications","language":"Java","stars":26,"topics":["kafka","testing-tools","testcontainers","hacktoberfest"],"license":"MIT","category":"data-pipelines","readme_excerpt":"🐛 Kafkaesque Kafkaesque is a test library whose aim is to make the experience in testing Kafka application less painful. By now, the project is in its early stage, defining the API that we will implement in the near future. Every help will be very useful :) The library allows to test the following use cases: Use Case 1: The Application Produces Some Messages on a Topic The first use case tests the messages produced by an application, reading them from the topic. The code, producing the messages, is external to Kafkaesque . Through Kafkaesque , it is possible to assert some properties on the messages generated by the application. Use Case 2: The Application Consumes Some Messages from a Topic The second use case tests an application that reads messages from a topic. Kafkaesque is responsible to produce such messages to trigger the execution of the application. It is also possible to assert conditions on the system state after the consumption of the messages. An equivalent method pipeline is available to test assertions after the consumption of each message: Use Case 3: Synchronize on Produced or Consumed Messages and Test Them Outside Kafkaesque The kafka-streams-test-utils testing library offers to developers some useful and powerful abstractions. Indeed, the TestInputTopic and the TestOutputTopic let developers manage asynchronous communication with a broker as it is fully synchronous. In this case, the library does not start any broker, not even embedded. Kafkaesque offers","default_branch":null,"files":null,"tree":[],"storefront":"/r/rcardin","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/rcardin/kafkaesque/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}