最近我们从使用烫伤转向火花。我使用eclipse和scala IDE进行eclipse编写代码和测试。使用twitter的JobTest课程,测试运行良好。任何使用JobTest的类都可以自动在eclipse中作为scala单元测试运行。我现在已经失去了这种能力。使用sbt完全可以运行spark测试用例,但是eclipse中针对这些测试的运行配置列出了“无适用”#。
有没有办法在eclipse中运行spark单元测试?
答案 0 :(得分:2)
我认为使用Java的相同方法可以在Scala中使用。基本上只需使用master作为" local"然后正常构建和运行单元测试。确保在测试完成后停止SparkContext。
我有这个适用于Spark 1.0.0但不是更新的版本。
public class Test123 {
static JavaSparkContext sparkCtx;
@BeforeClass
public static void sparkSetup() {
// Setup Spark
SparkConf conf = new SparkConf();
sparkCtx = new JavaSparkContext("local", "test", conf);
}
@AfterClass
public static void sparkTeardown() {
sparkCtx.stop();
}
@Test
public void integrationTest() {
JavaRDD<String> logRawInput = sparkCtx.parallelize(Arrays.asList(new String[] {
"data1",
"data2",
"garbage",
"data3",
}));
}
}