运行 测试时调试 SCollection 内容
Debugging SCollection contents when running tests
在运行 单元测试 (PipelineSpec
) 时,有什么方法可以查看 SCollection 的内容吗?
当 运行 在许多机器上生产某些东西时,将无法在一台机器上看到整个集合,但我想知道有没有办法查看 SCollection 的内容(例如当 运行 intellij 调试模式下的单元测试。
如果你想将调试语句打印到控制台,那么你可以使用 debug
方法,它是 SCollections
的一部分。示例代码如下所示
val stdOutMock = new MockedPrintStream
Console.withOut(stdOutMock) {
runWithContext { sc =>
val r = sc.parallelize(1 to 3).debug(prefix = "===")
r should containInAnyOrder(Seq(1, 2, 3))
}
}
stdOutMock.message.filterNot(_ == "\n") should contain theSameElementsAs
Seq("===1", "===2", "===3")
在运行 单元测试 (PipelineSpec
) 时,有什么方法可以查看 SCollection 的内容吗?
当 运行 在许多机器上生产某些东西时,将无法在一台机器上看到整个集合,但我想知道有没有办法查看 SCollection 的内容(例如当 运行 intellij 调试模式下的单元测试。
如果你想将调试语句打印到控制台,那么你可以使用 debug
方法,它是 SCollections
的一部分。示例代码如下所示
val stdOutMock = new MockedPrintStream
Console.withOut(stdOutMock) {
runWithContext { sc =>
val r = sc.parallelize(1 to 3).debug(prefix = "===")
r should containInAnyOrder(Seq(1, 2, 3))
}
}
stdOutMock.message.filterNot(_ == "\n") should contain theSameElementsAs
Seq("===1", "===2", "===3")