2013-01-15 65 views
1

我的應用程序的文件夾結構不像WAR文件。配置文件(如web.xml)位於配置文件夾中,消息包/資源文件位於資源文件夾中,資源文件以UTF-8形式存儲等。Ant構建用於生成正確結構化的WAR。針對WAR運行測試

目前,正在使用容器內測試框架(仙人掌);但是,這個框架不再被維護。

是否有可以爆炸WAR的容器測試框架,而不是要求源代碼的文件夾結構與WAR相匹配?如果框架支持將文件的實際位置映射到未來的WAR位置,那也可以。

是否仍然保持容器內測試框架?

+1

仙人掌是否缺少您需要的功能?或者有一個阻止你使用它的錯誤?如果沒有,爲什麼擔心它不被維護?你有沒有考慮過,如果你有投資,自己接管維護? – parsifal

+0

至於找到一個框架,需要一些任意的文件集合,並使其看起來像一個戰爭......爲什麼會有人開發這樣的事情? – parsifal

+0

@parsifal當然,它目前正在運行。我擔心隨着技術的發展它會停止運行,並且傾向於針對可能隨技術發展的框架編寫新的測試,而不是*不會*的框架。 – Matt

回答

0

選項有限。還有一些其他框架可以做類似的事情。 MockRunner也停用。 Spring Mock可能是一個選項,但缺少一些功能(如果您需要HTTP請求轉發,則必須擴展某些類)。

我在Jetty上取得了一些成功,因爲它很容易從測試用例中嵌入Jetty,當然,這會真正啓動您的應用程序,就好像它真的部署了,可能不是您想要的。

這就是爲什麼我通常會嘗試編寫不包含對Java EE類型的任何依賴關係的代碼。這樣,我可以用任何我喜歡的方式測試所有的東西。

CI服務器然後有一個單一的(慢)測試,它運行一次,部署整個應用程序(包括擦拭數據庫並填充乾淨的測試數據),並執行一些簡單的UI操作(登錄,瀏覽一些頁面)。

相關問題