MapReduce 單元測試工具 MRUnit 使用
MRUnit的使用很簡單,流程如下:
1:根據業務要求編寫Map類,Reduce類
2:編寫測試類。
3:執行測試,得到結果。
準備測試資料:
- CDRID;CDRType;Phone1;Phone2;SMS Status Code
655209;1;796764372490213;804422938115889;6
353415;0;356857119806206;287572231184798;4
835699;1;252280313968413;889717902341635;0
業務要求:
找出CDRType是1的,所有的SMS Status Code的型別彙總。
map結果應該輸出如下資訊:
6, 1
0, 1
下面就是準備map,reduce類。
Map 類:
public
class
SMSCDRMapper
extends
Mapper<LongWritable,
Text, Text, IntWritable> {
private
Text
status =
new
Text();
private
final
static
IntWritable
addOne =
new
IntWritable(
1
);
/**
*
Returns the SMS status code and its count
*/
protected
void
map(LongWritable
key, Text value, Context context)
throws
java.io.IOException,
InterruptedException {
//655209;1;796764372490213;804422938115889;6
is the Sample record format
String[]
line = value.toString().split(
";"
);
//
If record is of SMS CDR
if
(Integer.parseInt(line[
1
])
==
1
)
{
status.set(line[
4
]);
context.write(status,
addOne);
}
}
}
Reduce 類:
public
class
SMSCDRReducer
extends
Reducer<Text,
IntWritable, Text, IntWritable> {
protected
void
reduce(Text
key, Iterable<IntWritable> values, Context context)
throws
java.io.IOException,
InterruptedException {
int
sum
=
0
;
for
(IntWritable
value : values) {
sum
+= value.get();
}
context.write(key,
new
IntWritable(sum));
}
}
測試Test類:
import
java.util.ArrayList;
import
java.util.List;
import
org.apache.hadoop.io.IntWritable;
import
org.apache.hadoop.io.LongWritable;
import
org.apache.hadoop.io.Text;
import
org.apache.hadoop.mrunit.mapreduce.MapDriver;
相關推薦
MapReduce 單元測試工具 MRUnit 使用
MRUnit的使用很簡單,流程如下: 1:根據業務要求編寫Map類,Reduce類 2:編寫測試類。 3:執行測試,得到結果。 準備測試資料: CDRID;CDRTyp
淺析MapReduce單元測試框架—MRUnit
什麼是MRUnit MRUnit 是對MapReduce進行單元測試的一個框架,它可以很方便的測試mapper和reducer程式,MRUnit自己實現了一套Mock物件來控制OutputCollector的操作,其可以攔截map以及reduce上下文的輸出
MapReduce的單元測試框架MRUnit
import java.io.IOException;import java.util.ArrayList;import java.util.List;import org.apache.hadoop.io.*;import org.apache.hadoop.mrunit.mapreduce.MapDriv
MapReduce單元測試
except 測試的 exc 單元測試 spa out depend ble inpu MapReduce進行單元測試的步驟: 1. 在POM中添加MRUnit <dependency> <groupId>org.apach
OpenStack基礎知識-單元測試工具介紹
單元測試 pen mongod 大量 需要 哪些 sub 導入 使用 針對以前學的內容的一個簡單整理 1、單元測試工具介紹 unittest: 是 Python 的標準庫,提供了最基本的單元測試功能,包括 單元測試運行器(簡稱runner) 和 單元測試框架。項目的單元測試
java-junit單元測試工具
java-junit單元測試工具 Junit下載地址:http://pan.baidu.com/s/1eQfQQw6 優點: 1.不用寫把方法寫main函式裡面進行測試。 2.不用進行人工對比。 操作: 1.匯入juni
Java單元測試工具JUnit 5新特性一覽
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
MapReduce單元測試不通過
前幾天用mrunit進行單元測試,一直報錯:java.lang.IncompatibleClassChangeError: Found interface org.apache.hadoop.mapreduce.TaskInputOutputContext, but class was expect
前端單元測試工具——karma安裝使用
首先說明的是,為了學習karma專門買了一臺macbook。該教程也只能說適合mac,windows折騰了一星期沒有進展,所以不知道是不是適合windows。 第一步: 你的電腦中要裝有node.js(node安裝使用教程自行百度) 第二步: 使用
jasmine-JavaScript單元測試工具
文章目錄 Jasmine 是什麼? 快速瞭解 快速例項 語法介紹 後言 Jasmine 是什麼? jasmine是一個用來編寫Javascript測試的框架,它不依
Java單元測試工具:JUnit4(四)——JUnit測試套件使用及引數化設定
(四)JUnit測試套件使用及引數化設定 這篇筆記記錄JUnit測試套件的使用,即批量執行測試類;以及JUnit中的引數化設定。 @RunWith 當類被
Java單元測試工具:JUnit4(三)——JUnit詳解之執行流程及常用註解
(三)執行流程及常用註解 這篇筆記記錄JUnit測試類執行時,類中方法的執行順序;以及JUnit中常用的註解。 1.JUnit的執行流程 1.1 新建測試類
Java單元測試工具:JUnit4(二)——JUnit使用詳解
(二)JUnit使用注意點及測試失敗的兩種情況 看了慕課網的JUnit視訊教程: http://www.imooc.com/learn/356,總結筆記。 &nbs
Java單元測試工具:JUnit4(一)——概述及簡單例子
(一)JUnit概述及一個簡單例子 看了慕課網的JUnit視訊教程: http://www.imooc.com/learn/356,總結筆記。 這篇筆記記錄JUnit的
Jest-Javascript單元測試工具
Jest是一個JavaScript測試框架,由Facebook用來測試所有JavaScript程式碼,包括React應用程式。 不同級別的自動化測試:單元、整合、元件和功能. 單元測試可以看作是和在元件級別測試JavaScript物件和方法
單元測試工具Junit初試
執行單元測試是要導包的,我用的Junit-4.10.jar 新建一個class類,匯入org.junit下的包。 @Before註解是測試之前需要執行的內容,@After是測試執行完後的內容,@Test是測試內容。 public class Test { @Befo
開放原始碼 C/C++ 單元測試工具,第 2 部分: 瞭解 CppUnit
https://www.ibm.com/developerworks/cn/aix/library/au-ctools2_cppunit/index.html 本文是討論開放原始碼單元測試工具的 系列文章 的第 2 篇,介紹非常受歡迎的 CppUnit — 最初由 Eri
JUnit單元測試工具
在MapReduce程式中經常用到junit來測試測試的正確性 JUnit是Java單元測試工具。這裡以一個例子說明如何在Eclipse下進行JUnit測試。首先建立一個Java專案JUnitTest,建立類math.java,其程式碼為: 1 package www.gongqingkui.cn;
CUnit使用入門-精簡的C語言單元測試工具
目的:通過一個示例演示,掌握用Cunit做單元測試 內容: 1、介紹Cunit架構 2、介紹Cunit的測試模式 3、例項演示用Cunit 寫單元測試的操作流程 1.Cunit架構 Test Registry |
單元測試工具 CUnit 簡介
1.CUnit簡介 1.1 CUnit簡要描述 CUnit是一個編寫、管理及執行c語言單元測試的系統。它使用一個簡單的框架來構建測試結構,併為普通資料結構的測試提供豐富的斷言。此外,CUnit為測試的執行和結果檢視提供了許多不同的介面,包括自動測試模式和可