<jee:jndi-lookup id="narconFactory" jndi-name="LBARQCF" resource-ref="false"/>
@RunWith(SpringRunner.class)
@SpringBootTest
public class MQControllerTest {
//step 2
@Autowired
private MockMvc mvc;
@MockBean
private MQController mqController;
protected static final ConnectionFactory amqFactory = new ActiveMQConnectionFactory("vm://localhost?broker.persistent=false");
public static final CachingConnectionFactory connectionFactory = new CachingConnectionFactory(amqFactory);
@BeforeClass
public static void startUp() throws Exception {
connectionFactory.setCacheConsumers(false);
connectionFactory.createConnection().close();
}
@AfterClass
public static void shutDown() {
connectionFactory.resetConnection();
}
@Autowired
private JmsTemplate mockJmsTemplate;
@Autowired
private SourcePollingChannelAdapter startJms;
@Before
public void setup() throws JMSException{
Mockito.reset(this.mockJmsTemplate);
}
@Test
public void test_tbm_vrijeDagenCorrectie() throws Exception {
String expectedResponse ="";
//using bddmockito
given(mqController.tmVDCorrect(any(String.class))).willReturn(expectedResponse);
this.startJms.start();
mvc.perform(get("/tm/vdc/{dgn}","2016-01-16"))
.andExpect(status().isOk());
}
<util:constant id="narconFactory" static-field="n.d.poc.MQControllerTest.connectionFactory"/>
<util:constant id="vanconFactory" static-field="n.d.poc.MQControllerTest.connectionFactory"/>
<罢工> 错误:
没有类型为'org.springframework.test.web.servlet.mockMVC'的合格bean可用:至少需要1个符合autowire候选的bean。依赖项注释:{@org.springframework.beans.factory.annotation.autowire(required=true)}位于org.springframework.beans.factory.support.defaultListableBeanFactory.raisenomatchingBeanFound(DefaultListableBeanFactory.java:1474)~[spring-beans-4.3.5.release.jar:4.3.5.release]
<罢工> 我不知道我的错误是什么 编辑2:
github https://github.com/kswat/lrIntegrationUnit中的示例代码
我建议考虑使用ActiveMQ及其嵌入式模式,而不是mocking。通过这种方式,您将获得完整的JMS,并且不会处理低级资源来进行模拟。
在Spring Integration中,我们有以下测试目的:
/**
* Keeps an ActiveMQ {@link VMTransport} open for the duration of
* all tests (avoids cycling the transport each time the last
* connection is closed).
* @author Gary Russell
* @since 3.0
*
*/
public abstract class ActiveMQMultiContextTests {
protected static final ConnectionFactory amqFactory = new ActiveMQConnectionFactory("vm://localhost?broker.persistent=false");
protected static final CachingConnectionFactory connectionFactory = new CachingConnectionFactory(
amqFactory);
@BeforeClass
public static void startUp() throws Exception {
connectionFactory.setCacheConsumers(false);
connectionFactory.createConnection().close();
}
@AfterClass
public static void shutDown() {
connectionFactory.resetConnection();
}
}
ConnectionFactory
静态属性确实可以用作bean:
<util:constant id="narconFactory"
static-field="ActiveMQMultiContextTests.connectionFactory"/>
在用注释并使用)运行的Spring启动集成测试中,我可以通过 restTemplate和将真正的http post调用放到我的rest控制器。 这工作正常,就在控制器的末端 -
我试图在一个项目中结合Spring批处理和Spring集成。因此,我的想法是,Spring Batch使用使用自定义方法读取文件,返回,而使用创建新的,并将该消息发送到通道中... 所以从这里开始,Spring Integration连接到该通道,并开始工作其工作流... 知道如何实现吗?因为除了将读取的输入之外,我没有得到任何结果,但是我无法从那里获得Spring集成。我读过,但它不适合我的目的
基于此,有人对如何使用spring Integration实现此功能有什么建议吗?
问题内容: 在Go中,TCP连接(net.Conn)是io.ReadWriteCloser。我想通过模拟TCP连接来测试我的网络代码。我有两个要求: 要读取的数据存储在字符串中 每当写入数据时,我都希望将其存储在某种缓冲区中,以便以后使用 是否有数据结构或简单的方法? 问题答案: 为什么不使用?它是一种并且具有获取存储数据的方法。如果需要将其设置为,则可以定义自己的类型: 并定义一个方法:
我在python文件中有以下代码。我必须对这个文件进行单元测试。但是为了做到这一点,我需要实例化类的对象