Kafka functions: integration and E2E tests
- Dominant language
- Go
- Stars
- 365
- Forks
- 223
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 25
Description
Add automated integration and E2E tests for Kafka event sourcing.
## Automated tests (CI)
- Function with `run.kafka` config deploys successfully
- Kafka env vars (`FUNC_TRANSPORT`, `KAFKA_BROKERS`, `KAFKA_TOPIC`, `KAFKA_CONSUMER_GROUP`) are propagated to the container
- Validation rejects incomplete Kafka config before deploy
- Validation rejects `run.kafka` on non-Go runtimes
- End-to-end: deploy a Kafka function, produce a message, verify the function receives and processes a CloudEvent
Requires a Kafka broker in the test environment (e.g. Strimzi on kind).
## Testing guide
Document how to manually test Kafka functions end-to-end on a local cluster — setting up kind + Knative + Kafka, deploying, producing messages, verifying.
Related:
- #3938 (E2E testing guide — can be merged into this issue or kept separate)
- #3950 (Kafka event sourcing PR)
Contributor guide
Research direction
Start by reading #3950 and #3938, then review the existing CI and E2E setup for kind, Knative, and Kafka. Verify deployment, environment propagation, validation failures, and CloudEvent processing, and document the local setup and manual test flow when all checks pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kafka
- Domain
- distributed-systems, documentation, testing-qa
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100