I am trying to write unit test for kafka producer. But I get an error - Could not autowire. No beans of 'EmbeddedKafkaBroker' type found.
in the line lateinit var embeddedKafkaBroker: EmbeddedKafkaBroker
Here is my code
@ActiveProfiles("test")
@EmbeddedKafka(
partitions = 1,
bootstrapServersProperty = "spring.kafka.bootstrap-servers",
topics = arrayOf("someTopic"))
@SpringBootTest(
webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT,
properties = ["kafka.schema-registry.url=mock://mock"]
)
internal class KafkaProducerServiceTest {
@Autowired
lateinit var embeddedKafkaBroker: EmbeddedKafkaBroker // Error line - Could not autowire. No beans of 'EmbeddedKafkaBroker' type found.
@Autowired
lateinit var producer: KafkaProducerService<EventKey, EventValue>
@Test
fun send() {
val mockKey = mockk<EventKey>(relaxed = true)
val mockValue = mockk<EventValue>(relaxed = true)
producer.send(mockKey, mockValue)
}
}
I am not very sure what is the reason for this error.