![Hadoop大数据技术开发实战](https://wfqqreader-1252317822.image.myqcloud.com/cover/392/27563392/b_27563392.jpg)
上QQ阅读APP看书,第一时间看更新
5.7 使用MRUnit测试MapReduce程序
MRUnit(http://incubator.apache.org/mrunit/)是Apache提供的对MapReduce程序进行测试的工具类,使用它可以对Mapper和Reducer程序分别进行测试,并且可以将已知的输入传递给Mapper或者检查Reducer的输出是否符合预期。MRUnit可以与标准的测试框架(如JUnit)一起使用。
下面讲解在Eclipse中使用MRUnit结合JUnit对本章“单词计数”案例中的WordCount程序进行单元测试,具体操作步骤如下。
1. 添加Maven依赖
MRUnit测试库需要添加以下Maven依赖:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P110_14479.jpg?sign=1739366110-X5ZUAc0sHwNKMps0u9htLVL3VFX1j2bH-0-bb1a822a1425581f2fa5090b6494b19d)
2. 新建测试类MRTest.java
测试类MRTest.java的完整代码如下:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P110_14480.jpg?sign=1739366110-jz03J7wU3R7XiJmjDthMa8COhOTly4Vn-0-fec5c25658be11ca8b2573ada89f50a1)
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P111_14779.jpg?sign=1739366110-TRsMNPQq515evrJC0uhpnYV0Y5Y8Kdih-0-32254813236c4daa9d9ba38adf8288f7)
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P112_15007.jpg?sign=1739366110-B3PdbYgRwL4krsbnWU7EAMFN0R4Bz22T-0-3c456bf15f1812434af526f704edfee5)
3. 运行JUnit测试
分别运行JUnit测试,测试方法testMapper()、testReducer()和testMapReduce()。若测试结果与期望结果一致,则测试成功。