2011-03-16 284 views
1

我使用SchedulerFactoryBean为我的应用程序创建了一个简单的Job。任何人都可以让我知道如何使用Junit测试这项工作,并确保在给定的时间间隔内工作正常,并在此之后停止工作。我创建了一个示例类,并且已经测试了它的正常工作,为了阻止这个,我必须停止/终止应用程序。Junit for Quartz Scheduler

我想使用JUnit尝试是:作业调用是一个必要的时间后,我想测试用这种方法,然后将作业应停止相关的方法的返回值和其他功能的方法。

public class First { 
    private HashMap myData = null; 

    public void reload(){ 
    myData = calling some method; 
    } 
} 

我将在Junit中创建一个First实例,然后休眠一段时间。在睡眠之间,重新加载将由Job调用,并且将填充myData。现在我需要使用Junit测试myData中的值。 http://www.mkyong.com/spring/spring-...duler-example/

在此先感谢:

我使用下面的链接创造了这个工作。

回答

1

这是一些sensible advice如何实现它(也不)。

该链接基本上说,试图将您可能想要单元测试的逻辑抽象为服务类,然后对该类进行单元测试。

我发现这个stackoverflow thread也很有趣。

希望有所帮助。

+0

谢谢尼莱什。现在问题出在reload()中,myData值将通过Job的某些方法填充,并从日志文件中填充其显示的数据。当我尝试通过使用getter方法访问myData值时,由于First myData变量的对象具有空值,因此我给出了null值。不知道为什么myData的值没有反映到实例中。 – user650900 2011-03-16 06:52:30

+0

不正确地理解问题..你能提供更多的代码和详细说明吗? – Nilesh 2011-03-22 08:05:58

0

您可以添加代码段:while (true) {}以避免JUnit线程结束。但这不是推荐方法。因为如果你使用maven或hudson,这个过程将被这个方法阻塞,并且构建失败。

相关问题