Hi everyone,

after reviewing a bunch of end-to-end tests, I'm wondering if we should really continue implementing everything in bash scripts. Wouldn't it be nicer to implement them in Java code that just calls the interfaces of Flink (e.g. "./bin/flink run" or REST API)?

Here are some thoughts why I think we should consider that:

- Implement the tests in a more object oriented way: We could have classes such as Cluster, LogAnalyzer, WatchdogProcess, and other utility classes that can make writing tests easier. This also ensure maintainability in the future because all tools for proper Java coding style, comments etc. are already in place.

- Exception handling and type safety: We could catch excpetion more easily (e.g. if a REST request fails or a process is not there)

- Debuggability: We could run end-to-end tests in the IDE for debugging and set breakpoints etc.


What do you think?


Regards,

Timo

Reply via email to