Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
chrisdail opened this issue Sep 7, 2017 · 5 comments
Open

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

chrisdail opened this issue Sep 7, 2017 · 5 comments
Assignees
Milestone

Comments

@chrisdail
Copy link
Contributor

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.
@EronWright EronWright added this to the EAP2 milestone May 24, 2018
@fpj
Copy link
Contributor

fpj commented May 24, 2018

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

@EronWright
Copy link
Contributor

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

@hldnova
Copy link
Contributor

hldnova commented May 25, 2018

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
Copy link
Contributor

hldnova commented May 25, 2018

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

  • build
  • test
  • download and compile a flink sample (at minimum exercising flink pravega writer/reader).
  • download and start flink cluster
  • run the flink app on the flink cluster
  • some basic verification of the flink app.
  • eventually extend the flink samples to cover more features (exactlyonce, streamcut, table/batch, etc.)

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
Copy link
Contributor

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants