MRUnit 提供了Mapreducedriver類,它能夠測試 mapper和reducer一起工作的情況如何。MapReducedriver類的參數(shù)化方式與Mapperdriver和ReducerDriver的不同。
  首先,我們要參數(shù)化mapper的輸入和輸出類型,以及reducer的輸入和輸出類型。由于mapper的輸出類型總與reducer的輸入類型相匹配,因此最后會有三對參數(shù)化的類型。此外,我們可以提供多個輸入,并指定多個期望的輸出。
  正如在代碼中看到的那樣,此設(shè)置類似于MapDriver/ReduceDriver類中所使用的設(shè)置。我們傳入mapper和reducer的實例。如果需要的話,可以使用withconfiguration和withCombiner來測試配置和組合器。
  MapReducedriver類能夠傳入多個具有不同鍵的輸入。這里,我們傳入兩條記錄——第一條為LongWritable類型的任意值和包含行“dog cat dog”的Text對象,而第二條為LongWritable類型的任意值和包含行“catmouse”的Text對象。
  還可以使用withoutput方法指定reducer的期望輸出。這里,我們指定三個鍵—“cat”“dog”和“mouse”,以及相應(yīng)的計數(shù)2、2和1。最后,如果mapper/reducer需要累加某個計數(shù)器,最后,如果mapper/reducer需要累加某個計數(shù)器,那么可以選擇withCounter來指定計數(shù)器的期望值。
  如果測試成功,那么我們會對mapper和reducer能夠正確地協(xié)同工作更有信心。盡管MRUnit讓mapper和reducer代碼的單元測試變得輕松,但這里給出的mappe和reducer示例是非常簡單的。如果map和/或reduce代碼變得更加復(fù)雜,那么一個好的設(shè)計實踐就是將業(yè)務(wù)即應(yīng)用特定的處理從Hadoop框架支持中脫離出來,并單獨測試其業(yè)務(wù)邏輯。盡管Mapreducedriver類在集成局域網(wǎng)管理內(nèi)部測試中很有用,但我們很容易就會處于這樣一種狀態(tài),此時單元測試已經(jīng)完成,不再需要測試代碼,而是需要局域網(wǎng)管理內(nèi)部測試Hadoop框架自身。
  這里描述的單元測試在早期檢測錯誤方面通常表現(xiàn)出色,但它們并不真正地測試Hadoop中完整的Mapreduce作業(yè)。

 

★關(guān)于WorkWin公司電腦監(jiān)控軟件★

WorkWin的使命是打造Work用途的Windows 電腦系統(tǒng),有效規(guī)范員工上網(wǎng)行為,讓老板知道員工每天在做什么(監(jiān)控包括屏幕、上網(wǎng)在內(nèi)的一舉一動),限制員工不能做什么(禁止網(wǎng)購、游戲、優(yōu)盤等)。

WorkWin基于純軟件設(shè)計,非常容易使用,無需添加或改動任何硬件,使用一臺管理機監(jiān)控全部員工機電腦。歷經(jīng)南京網(wǎng)亞十余年精心打造,此時此刻每天都有成千上萬企業(yè)電腦正在運行WorkWin,選擇WorkWin選擇“贏”。

WorkWin介紹

WorkWin監(jiān)控首頁 短視頻講解 下載免費試用版

版權(quán)所有,南京網(wǎng)亞計算機有限公司 。本文鏈接地址: 集成局域網(wǎng)管理內(nèi)部測試