pravega / flink-connectors

Apache Flink connectors for Pravega.
Apache License 2.0
96 stars 67 forks source link

Integrate flink end-to-end tests with Travis #47

Open chrisdail opened 7 years ago

chrisdail commented 7 years ago

Suggestion came from slack around integrating testing of the flink connectors using the flink end-to-end tests.

From Stephan:

Or we change the build setup of the flink-connectors repository a bit:

  • Travis would not call gradle directly, but instead run a test driver script
  • That script would trigger initially gradle, but also run some end-to-end tests that download flink, take the compiled connector, start flink, submit a job, parse results, etc.
fpj commented 6 years ago

I think I know what this issue is referring to, but it is missing specifics about what these end-to-end tests are.

EronWright commented 6 years ago

I take the meaning to be, run gradlew test in the travis build. At the moment, travis is just building the code.

hldnova commented 6 years ago

I've noticed (https://travis-ci.org/pravega/flink-connectors/builds/382312652) the test was run with gradlew check, while some others don't. A little puzzled as to why.

hldnova commented 6 years ago

Here is what I have in mind for the end to end tests:

Functional wise, the end-to-end tests do not go much beyond the existing unit tests. The main difference is that they mimic the end user experience.

comments?

StephanEwen commented 6 years ago

In Flink, we have the end-to-end tests mainly to validate dependencies, classloading, config setups, multi process setups, etc. They have been useful in uncovering issues in those areas.

For a simple overview, have a look at this maven module: https://github.com/apache/flink/tree/master/flink-end-to-end-tests