As someone new to Spring but with a streams processing background, I'm pretty confused about how I should be testing processors written in Spring Cloud Stream. The testing docs (written for 2.2.0 but seemingly the most recent, so still valid for 3.0.7 I guess?) indicate that a processor should be autowired into the test class via annotation, but there's no mention of where this 'Processor' bean comes from. I've tried to make it available via:
import org.springframework.cloud.stream.messaging.Processor;
...
@Autowired
private Processor processor;
but when running the tests, the exception is always the same:
Unsatisfied dependency expressed through field 'processor'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.springframework.cloud.stream.messaging.Processor' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
Am I even on the right path here? There seems to be lots of deprecated features in the past year so any pointers to more recent documentation would be appreciated.