2013-10-15 44 views
1

背景:我試圖測試一個Hive查詢作爲我們測試框架的一部分。我想創建簡短的測試,測試一小部分數據以便查詢快速返回,並且能夠在每臺計算機(甚至是私人筆記本電腦)上運行它們。目標是能夠檢出代碼,使用maven構建並運行測試。在單元測試中啓動一個簡單的獨立hadoop服務器

問題:有沒有一種方法可以啓動獨立的hadoop(或某種模擬器)只使用java代碼,沒有下載和安裝可以作爲測試的一部分運行?

我的目標是在測試結束時刪除測試中的測試,在其@Before方法設置hadoop。

回答

1

看看HiveQLUnit - 單元測試Hive的開源項目。

  • Fast - 它通過使用HiveContext運行在內存中。
  • 獨立 - 無需安裝服務器即可從您的筆記本電腦/ dexktop運行。
  • Maven集成 - 包含在maven central中,可以輕鬆包含在項目中作爲maven依賴項。
  • JUnit的集成 - 與JUnit單元測試框架

它還解決您從您喜歡的IDE執行獨立的單元測試的問題完全集成。

它可以在任何操作系統(包括Windows,Linux和Mac OSX)上從您最喜愛的IDE執行單元測試。這裏有一些關於使用HiveQLUnit的指導 - Documentation

注意:我隸屬於HiveQLUnit OS項目。

+0

謝謝你的回答。這與我無關。已經2年了,我已經離開了這個工作場所。但是,嘿,也許別人會從中受益:) – Avi

+0

您似乎是該項目的作者之一。您*必須*披露您的項目所屬機構,否則您的答案將被視爲垃圾郵件。 –