osdir.com


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to do test in Flink?


Hi Hequn,

Thanks fr your reply.

Just to understand, these harness tests and the example your provided is actually having the same concept of the integration test with the example given here (https://ci.apache.org/projects/flink/flink-docs-release-1.6/dev/stream/testing.html#integration-testing) right ?

Harness tests provide more easy to use utils to construct source/sink and the execution environment.

Best regards/祝好,

Chang Liu 刘畅


On 13 Aug 2018, at 04:01, Hequn Cheng <chenghequn@xxxxxxxxx> wrote:

Hi Chang,

There are some harness tests which can be used to test your function. It is also a common way to test function or operator in flink internal tests. Currently, the harness classes mainly include:
  • KeyedOneInputStreamOperatorTestHarness
  • KeyedTwoInputStreamOperatorTestHarness
  • OneInputStreamOperatorTestHarness
  • TwoInputStreamOperatorTestHarness
You can take a look at the source code of these classes. 

To be more specific, you can take a look at the testSlidingEventTimeWindowsApply[1], in which the RichSumReducer window function has been tested.

Best, Hequn



On Mon, Aug 13, 2018 at 7:10 AM, Chang Liu <fluency.03@xxxxxxxxx> wrote:
Dear all,

I have some questions regarding testing in Flink. The more general question is: is there any guideline, template, or best practices that we can follow if we want to test our flink code (more in scala)?

I know there is this page: https://ci.apache.org/projects/flink/flink-docs-release-1.6/dev/stream/testing.html but not so much written there. And I also did not find a more comprehensive documentation of this library: flink-test-utils_2.11.

One detailed question: how do you test this WindowFunction below? The return type is Unit right? We cannot do unit test on like, like how the ReduceFunction was tested in the example link above. Then we only have the option of doing integration testing on it?
<code.png>


Your ideas would be very helpful :) Thanks in advance !

Best regards/祝好,

Chang Liu 刘畅