我已經使用Junit和CI來完成基於Java的純應用程序,這很好用。 Junit用於通過傳遞其輸入值(參數)爲操作/方法單元測試用例,並期望返回值應與條件匹配。通常我們測試一個基於純Java的應用程序的junit,它具有Controller,Service和DAO層。有時使用模擬對象來模擬/代理第三方應用程序。ESB應用程序和持續集成
現在,我必須建立在騾子ESB的應用程序,它是有HTTP連接器,API套件,腎錯構瘤,調度,雲連接到SFDC,ActiveMQ的,SMTP,JDBC連接到多個數據庫,datampaper,datewave並繼續..
最後,Mule應用程序是一個xml文件,集成了Java/Groovy和其他一些技術。 Java組件僅佔應用程序構建組件的10%(或沒有)。
我計劃與詹金斯持續集成。爲此,我需要運行Junit框架來對應用程序進行迴歸測試。我希望Munit不會與CI一起工作,因爲Munit必須用Studio來執行,並且它是用xml文件編寫的。
由於應用程序構建是不完整的基於Java的應用程序(在此我們可以編寫單元測試斷言業務和其返回值)觀察到的問題:
- 編寫JUnit的騾子組件正在採取大量的時間比編寫功能,因爲代碼長度更多地獲得Mule xml組件並具有模擬組件。
- 我不能有Mule ESB應用程序的100%代碼覆蓋率。我可以在基於Java/Junit的應用程序中使用cobertura或其他工具進行代碼覆蓋。
- 而不是花時間在這個單元測試開發人員可以利用時間進行手動測試更穩定的應用程序。
此外,構建ESB應用程序以運行不同的過程以集成在一起。在基於ESB的應用程序中使用CI與Junit是否是很好的體系結構建議?或者在沒有CI和Junit測試的情況下進行手動測試並在服務器中部署應用程序?
嗨,我不確定我完全理解你在問什麼。在我的回答中,我盡力總結了一系列問題並回答了他們。你介意重新審視這些內容,並幫助我糾正它們?一旦我們得到澄清,請爲未來的讀者更新問題。 –