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

Russ Hatch updated CASSANDRA-12050:
-----------------------------------
    Assignee:     (was: Russ Hatch)

> per-patch smoke suites as an early/fast testing tier
> ----------------------------------------------------
>
>                 Key: CASSANDRA-12050
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12050
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Russ Hatch
>
> Coverage data offers a unique opportunity to build metadata about tests and 
> related Cassandra code.
> Using the jacoco coverage api we should be able to build a simple index of 
> tests (dtest, unit) to the Cassandra code they touch (and the reverse).
> When a new patch is introduced, we do a lookup in that index, based on java 
> source files touched (and possibly lines within those files), and use that to 
> infer most relevant dtests or unit tests. Patch authors can then run that 
> small test subset as a first testing pass.
> In this way we can build small, focused, test suites that are custom to each 
> patch. Once this small custom smoke test appears successful things would of 
> course need to be vetted across a more complete test run on CI.
> I think the best interface would simply be ant targets. One target would be 
> used to build/refresh the test:source code index (run occasionally and saved 
> somewhere; index building would be time consuming since it will require full 
> job runs). A second target looks at files touched and does the index lookups, 
> then outputs a list of tests to run.
> The dev user experience might looking something like this:
> {noformat}
> ant get-custom-smoke -Dcoverage_index=./trunk_coverage_index_SHA_foo.idx
> Generating test lists....
> Please run the following two scripts to vet your changes:
> ./custom_smoke_junit.sh
> ./custom_smoke_dtest.sh
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to