我从 citrus 文档中获取并修改了这个示例,以创建一个测试前任务。
public class BeforeTest extends TestRunnerBeforeTestSupport {
@Autowired
@Qualifier("myCitrusJmsEndpointBeanId")
private javax.jms.Queue injectedQueue;
@Override
public void beforeTest(TestRunner runner) {
runner.purgeQueues(action -> action.queue(injectedQueue));
}
}
当我开始测试时,Spring 抛出一个 Exception 并表示它找不到 type 的 Bean javax.jms.Queue
。
没错,Qualifier 中的 bean id 是一个 Citrus JmsEndpoint,它是用
<citrus-jms:endpoint id="myCitrusJmsEndpointBeanId".../>
但是将 JmsEndpoint bean 重新定义为 Queue bean 是多余的。另一方面,不允许编译器将其定义injectedQueue
为 JmsEndpoint。
显然我在这里做错了什么。柑橘样品中有完整的例子吗?还是其他地方?
谢谢