我们的团队正在更新我们的依赖项,其中之一是Cassandra Unit。我注意到这个库最后一次更新是在 2020 年 1 月,并且很长一段时间没有任何活动。此外,还有 12 个刚刚搁置的开放拉取请求。我确实注意到一些开发人员已经分叉了这个存储库以添加他们想要的功能。
我们喜欢使用这个库通过 JUnit 在我们的 DAO 对象中测试 CQL,并计划升级到最新版本 (4.3.1.0)。
我希望领导这项工作的开发人员(jsevellec)做得很好。但是在这个存储库上没有活动的情况下,并且从长远来看,我想知道还有哪些其他库可以通过 JUnit 轻松使用嵌入式 Cassandra 实例进行测试,这些库得到了更积极的支持。
到目前为止,我看到了两种方法:
- 如果您喜欢该产品,请与
jsevellec
合作 - 使用测试容器+卡桑德拉
这里有一些与Spring + Testcontainers + Cassandra相关的问题 https://stackoverflow.com/a/58673372/6916890public class SomeTest { @Rule public CassandraContainer cassandra = new CassandraContainer(); @Test public void test(){ Cluster cluster = cassandra.getCluster(); try(Session session = cluster.connect()) { session.execute("CREATE KEYSPACE IF NOT EXISTS test WITH replication = n" + "{'class':'SimpleStrategy','replication_factor':'1'};"); List<KeyspaceMetadata> keyspaces = session.getCluster().getMetadata().getKeyspaces(); List<KeyspaceMetadata> filteredKeyspaces = keyspaces .stream() .filter(km -> km.getName().equals("test")) .collect(Collectors.toList()); assertEquals(1, filteredKeyspaces.size()); } } }