Timer类java 1.4的JUnit测试

时间:2014-09-05 07:49:31

标签: java junit

我正在编写一个JUnit测试,用于测试我在java 1.4中使用时间类的一些函数。这个测试用例的作用是创建一个文件,该文件将被传递给我正在测试的函数。我的方法是使用timer.schedule(TimerTask task, long delay);删除该文件。我的测试用例正在运行,但它并没有等待延迟传递给timer.schedule()。我的代码示例如下。

测试功能:

public void clean(String fileName){

    long delay = 1000 * 60;
    timer = new Timer();

    final File f= new File(fileName);
    if(!f.exists()){
        f.createNewFile();      
    }

            timer.schedule(new RemoveFile(f), delay);  

            //RemoveFile() is inner class which extends
            TimerTask and remove the file. TimerTask is 
            an abstract class that implements
            Runnable interface.

}

我的TestCase如下

public void testClean(){

         String file = "c:\\Users\\abc\\abc.txt";       
         Cleaner instance = Cleaner.getInstace(); //Static method
         instance.clean(file);

}

此测试用例不会等待TimerTask完成其功能。我不知道如何等待测试用例等待TimeTask线程完成其工作。

0 个答案:

没有答案