2010-06-14 124 views

回答

4

在确信它是可测试的只是把它像任何其他公共静态方法:

YourClass.main(new String[] {"parameter 1", "parameter 2"}); 

而且事后断言以下状态。

+0

我已经编写了类似于你的代码,但覆盖报告显示在您测试的主要方法中。 – 2010-06-14 07:56:56

+0

你能通过你的测试吗?如果确实调用了主要方法,那么问题在于排除静态方法的测试覆盖工具。 – 2010-06-14 08:02:32

+1

除非你用变量参数声明main,否则它不应该是'YourClass.main(new String [] {“param 1”,“param 2”});'? – aioobe 2010-06-14 08:32:36

0

因为它不返回任何内容,所以无法检查输出。但它有什么作用?如果它调用另一个方法,则为该方法编写一个测试。如果它不调用其他方法,那么写一个测试。

+0

这个问题的目的是覆盖主要方法的所有行。我无法修改主要方法的内容。我曾经在junit测试中调用过主要方法,但为什么覆盖范围无法覆盖它。 – 2010-06-14 07:50:32