2010-06-14 123 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