我在一個複雜的多模塊maven項目上工作。其中一個模塊是一個執行命令行應用程序的可執行jar。我需要整合測試這個應用程序。我需要多次運行它,使用幾個不同的命令行並驗證退出狀態和stdout/err。然而,我找不到聲明支持這個的maven插件,也無法找到支持測試命令行應用程序的JUnit庫。如何使用maven測試命令行應用程序?
在你說'不測試主要方法 - 反而做bla',在這種情況下我真的做的意思是測試主要方法,而不是一些輔助功能。整個過程是在自己的虛擬機和環境中以用戶的身份運行應用程序,並驗證它是否正常工作 - 正確解析命令行選項,退出寫入狀態並從正確的類加載正確的類右插件罐子。
問題在於它是平臺特定的。我意識到,任何與運行命令行應用程序有關的東西都會有一些只能在windows或linux上運行的東西,但是在sh中編寫測試腳本可能會走得太遠。 – drdozer 2010-08-13 11:33:18