Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java junit等待外部资源就绪_Java_Junit_Cassandra - Fatal编程技术网

Java junit等待外部资源就绪

Java junit等待外部资源就绪,java,junit,cassandra,Java,Junit,Cassandra,我试图用JUnit外部资源测试Cassandra。我有两个类CassandraExternalResource和TestCassandra。以下是TestCassandra的片段: public class TestCassandra { @Rule public CassandraExternalResource cassandraExternalResource = new CassandraExternalResource();

我试图用JUnit外部资源测试Cassandra。我有两个类CassandraExternalResource和TestCassandra。以下是TestCassandra的片段:

    public class TestCassandra {

        @Rule
        public CassandraExternalResource cassandraExternalResource = new CassandraExternalResource();


        @Test
        public void test() throws InterruptedException {
            System.out.println("During Test");
        }
    }
在CassandraExternalResource的before方法中,我用一个单独的线程启动Cassandra服务器。我想要的是让测试用例等待cassandra服务器启动并运行

由于服务器启动需要一些时间,所以测试用例在服务器准备就绪之前开始运行


非常感谢您的帮助。

您可以通过ping cassandra服务器来扩展规则的before方法,直到它准备好。

我如何理解cassandra服务器准备好了?既然我用一个单独的线程启动cassandra,我如何ping直到服务器准备好?这取决于“准备好”的定义。您可以尝试连接到cassandra,直到获得连接。