Hi!

I want to bring up the discussion again about writing Unit Tests, rather
than many ITCases. I looked a bit through the Table API and it looks like
there is virtually no unit test, but everything has an ITCase.

I would really encourage to write more unit tests.

The DataStream API is actually a good example: It does not have an ITCase
for every operator - operators are all unit tested with a test harness
(mock contexts and environments). There are a few end-to-end ITCases for
certain functionalities, like Checkpointing, State Backends, or Timestamp
Handling.

I think it would be great to adopt a similar model for the TableAPI. So
far, the Table API follows the DataSet API model, where every single
operator has one or more ITCases - that makes build times very long. Also,
in my experience, ITCases are actually not even as precise in the tests as
a good series of unit tests.

Given that the library is still being created, now is a good time to look
into this.
Once it is established, chances of that getting reworked will be slim.

Greetings,
Stephan

Reply via email to