[ 
https://issues.apache.org/jira/browse/BEAM-2506?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Davor Bonaci reassigned BEAM-2506:
----------------------------------

    Assignee:     (was: Davor Bonaci)

> Consider bundling multiple ValidatesRunner tests into one pipeline
> ------------------------------------------------------------------
>
>                 Key: BEAM-2506
>                 URL: https://issues.apache.org/jira/browse/BEAM-2506
>             Project: Beam
>          Issue Type: Improvement
>          Components: testing
>            Reporter: Eugene Kirpichov
>
> Currently ValidatesRunner test suites run 1 pipeline per unit test. That's a 
> lot of small pipelines, and consumes a lot of resources especially in case of 
> a pretty heavyweight runner like Dataflow, so tests take a long time and 
> can't be run in parallel due to quota issues, etc.
> [~jasonkuster] says he and [~davor] discussed that we could execute multiple 
> unit tests in a single TestPipeline.
> This JIRA is to track that idea.
> To further develop it: in case of Java, we could create a custom JUnit Runner 
> http://junit.org/junit4/javadoc/4.12/org/junit/runner/Runner.html that would 
> apply all the transforms and PAsserts in unit tests to a single instance of 
> TestPipeline (per class, rather than per method), and run the whole thing at 
> the end. PAssert captures the source location of its application, so we could 
> still report which particular test failed.
> This obviously has fewer isolation between unit test methods, cause they 
> effectively run in parallel instead of in sequence, so things like per-method 
> setup and teardown will no longer be applicable. There'll probably be other 
> issues.
> Anyway, this seems doable and high-impact.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to