我是Hadoop的新手,并试图了解如何为hadoop应用程序运行不同类型的测试用例。
我们的应用程序包含猪脚本和许多处理HDFS的帮助程序类/ UDF。因此,从集成测试用例的角度来看,如果我们可以在HDFS本身上测试我们的辅助类逻辑,这是很好的。
我写了一些简单的junit 4测试用例并运行了以下内容: hadoop org.junit.runner.JUnitCore datamodel.TestDomesticDataModel
我得到了输出的转储,我们通常会看到它们用于运行测试用例。
对于运行猪测试案例,我可以使用pigunit。 所以这两种简单的方法可能会为我解决问题。
我的问题:
1-在测试实用程序类的简单方法中是否有任何问题?这保证适用于所有hadoop系统吗?当然,检查测试脚本的失败可能是一种手动。但除此之外还有什么问题?
2-“hadoop main-class-name”调用如何工作?主类如何查询HDFS?
3-我用jython pyunit尝试了同样的技巧。 hadoop org.python.util.jython unitest.py 这似乎也有效。实际上我将它与maven exec插件集成在一起,如果测试用例失败,maven构建本身就会失败。所以错误得到了暗示很好。
有没有想过为hadoop编写pyunit测试用例的方法?