如何使用jCache和HazelcastProvider实现缓存单元测试?使用Hazelcast提供程序测试jCache
目前我得到这个错误:
Caused by: java.lang.IllegalStateException: Unable to connect to any address in the config! The following addresses were tried: [localhost/127.0.0.1:5701, localhost/127.0.0.1:5702, localhost/127.0.0.1:5703]
简化下面的代码:
@RunWith(SpringJUnit4ClassRunner.class)
@TestPropertySource("classpath:provider.properties")
@ContextConfiguration(classes = {
CustomCacheConfiguration.class
})
与多播一起hazelcast.xml文件我已经缓存声明,所以我的理解是正确的,我应该有一个嵌入式实例。
//编辑
这里是hazelcast.xml文件:
<hazelcast xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.hazelcast.com/schema/config
http://www.hazelcast.com/schema/config/hazelcast-config-3.8.xsd"
xmlns="http://www.hazelcast.com/schema/config">
<group>
<name>test</name>
<password>test</password>
</group>
<network>
<join>
<multicast enabled="true"/>
</join>
</network>
<!-- cache definitions -->
</hazelcast>
而且这里是日志:
Jun 28, 2017 10:55:45 AM com.hazelcast.client.config.XmlClientConfigLocator
INFO: Loading 'hazelcast-client-default.xml' from classpath.
Jun 28, 2017 10:55:45 AM com.hazelcast.client.config.XmlClientConfigLocator
INFO: Loading 'hazelcast-client-default.xml' from classpath.
Jun 28, 2017 10:55:45 AM com.hazelcast.core.LifecycleService
INFO: hz.client_0 [dev] [3.8.2] HazelcastClient 3.8.2 (20170518 - a60f944) is STARTING
Jun 28, 2017 10:55:46 AM com.hazelcast.core.LifecycleService
INFO: hz.client_0 [dev] [3.8.2] HazelcastClient 3.8.2 (20170518 - a60f944) is STARTED
Jun 28, 2017 10:55:46 AM com.hazelcast.client.spi.impl.ClusterListenerSupport
INFO: hz.client_0 [dev] [3.8.2] Trying to connect to [127.0.0.1]:5701 as owner member
Jun 28, 2017 10:55:46 AM com.hazelcast.client.spi.impl.ClusterListenerSupport
INFO: hz.client_0 [dev] [3.8.2] Trying to connect to [127.0.0.1]:5702 as owner member
Jun 28, 2017 10:55:46 AM com.hazelcast.client.spi.impl.ClusterListenerSupport
INFO: hz.client_0 [dev] [3.8.2] Trying to connect to [127.0.0.1]:5703 as owner member
Jun 28, 2017 10:55:46 AM com.hazelcast.client.spi.impl.ClusterListenerSupport
WARNING: hz.client_0 [dev] [3.8.2] Unable to get alive cluster connection, try in 2940 ms later, attempt 1 of 2.
Jun 28, 2017 10:55:49 AM com.hazelcast.client.spi.impl.ClusterListenerSupport
INFO: hz.client_0 [dev] [3.8.2] Trying to connect to [127.0.0.1]:5703 as owner member
Jun 28, 2017 10:55:49 AM com.hazelcast.client.spi.impl.ClusterListenerSupport
INFO: hz.client_0 [dev] [3.8.2] Trying to connect to [127.0.0.1]:5702 as owner member
Jun 28, 2017 10:55:49 AM com.hazelcast.client.spi.impl.ClusterListenerSupport
INFO: hz.client_0 [dev] [3.8.2] Trying to connect to [127.0.0.1]:5701 as owner member
Jun 28, 2017 10:55:49 AM com.hazelcast.client.spi.impl.ClusterListenerSupport
WARNING: hz.client_0 [dev] [3.8.2] Unable to get alive cluster connection, try in 2996 ms later, attempt 2 of 2.
Jun 28, 2017 10:55:52 AM com.hazelcast.core.LifecycleService
INFO: hz.client_0 [dev] [3.8.2] HazelcastClient 3.8.2 (20170518 - a60f944) is SHUTTING_DOWN
Jun 28, 2017 10:55:52 AM com.hazelcast.core.LifecycleService
INFO: hz.client_0 [dev] [3.8.2] HazelcastClient 3.8.2 (20170518 - a60f944) is SHUTDOWN
你能后的日志?可能是Hazelcast没有开始。严格地说,这不会是一个单元测试,你可能想要使用模拟对象。或者,查看https://github.com/hazelcast/hazelcast/tree/master/hazelcast/src/test/java/com/hazelcast/cache,了解测试如何在那里运行。 –
您应该检查类路径和其他bean。 hazelcast.xml文件将被Hazelcast服务器使用,无论你是否启动一个,或者它的启动不够快。你有错误信息来自'HazelcastClient'。客户端正在启动,无法找到要连接的服务器 - 因此无论是启动客户端而不是服务器,还是服务器之前的客户端。 –
问题是我没有在任何地方启动客户端,看起来,在测试过程中,hazelcast无法加载我的xml文件,因此加载了默认的客户端。 – Forin