2017-02-08 240 views
3

我有一个名为NullMetricsPublisher的类,里面有几个方法,例如其中一个void publish()。由于类名已经表明该类不应该做任何事情。方法void publish()基本上是空的。Junit测试空方法

void publish() { 
    // do nothing in this method 
} 

但是,我们希望单元测试它,确保方法内部没有任何逻辑。想知道有人知道如何测试Java中的类的空方法吗?

:为什么我们在首位NullMetricsPublisher?我们还有另一个名为MetricsPublisher的课程,该课程向我们的指标服务发布指标。但是,在某些情况下,我们不想发布度量标准。现有接口必须要求Publisher,因此,现在我们只需添加NullMetricsPublisher类来实现Publisher

+0

奇怪的问题... – CRazyProgrammer

+0

为什么它很奇怪?因为测试没有操作方法是奇怪的? –

+0

我会说奇怪的方法* – CRazyProgrammer

回答

1

你不能测试一个方法对单元测试什么都不做。为了测试这个,你需要检查没有任何可能发生的事情发生。有无数的事情可能发生。因此不可能为此编写单元测试。

您可以测试的唯一一件事是不会发生特定的操作,例如, NullMetricsPublisher不会发送消息,如MetricsPublisher