[ https://issues.apache.org/jira/browse/LUCENE-1769?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12739423#action_12739423 ]
Uwe Schindler commented on LUCENE-1769: --------------------------------------- Hi Nick, I will look into this at the end of the week, when you sent me the 2.6 snapshot build. My problems are currently: - The tests are not directly instumented (neither in core nor contrib nor bw). Currenty the core classes and contrib classes are instrumented. The testcases are linked in clover-setup via <testsources>, if I leave this out, I get 0% coverage. The backwards tests do not appear in testsources. Because of that, the tests still call the instrumented classes, but the coverage report shows no coverage. You can easily see this e.g. for the old HitCollector backwards compatibility code. Also during running of the bw-tests, no additional files are created during tests runs in the db folder. If I add the bw-test cases with testsources to the clover config, the clover report mixes the linkage of the tests together and you see sometimes 2 test with same name hitting the same method and so on. Is there a possibility to tell clover, that you do not want to explicitely link the testcases of the backwards test and just measure coverage regardless of which class called the instrumented classes? I do not know, why the calls from "unknown" tests are not counted for the coverage. > Fix wrong clover analysis because of backwards-tests, upgrade clover to 2.4.3 > or better > --------------------------------------------------------------------------------------- > > Key: LUCENE-1769 > URL: https://issues.apache.org/jira/browse/LUCENE-1769 > Project: Lucene - Java > Issue Type: Bug > Components: Build > Affects Versions: 2.9 > Reporter: Uwe Schindler > Attachments: clover.license, LUCENE-1769.patch, LUCENE-1769.patch, > nicks-LUCENE-1769.patch > > > This is a followup for > [http://www.lucidimagination.com/search/document/6248d6eafbe10ef4/build_failed_in_hudson_lucene_trunk_902] > The problem with clover running on hudson is, that it does not instrument all > tests ran. The autodetection of clover 1.x is not able to find out which > files are the correct tests and only instruments the backwards test. Because > of this, the current coverage report is only from the backwards tests running > against the current Lucene JAR. > You can see this, if you install clover and start the tests. During test-core > no clover data is added to the db, only when backwards-tests begin, new files > are created in the clover db folder. > Clover 2.x supports a new ant task, <testsources> that can be used to specify > the files, that are the tests. It works here locally with clover 2.4.3 and > produces a really nice coverage report, also linking with test files work, it > tells which tests failed and so on. > I will attach a patch, that changes common-build.xml to the new clover > version (other initialization resource) and tells clover where to find the > tests (using the test folder include/exclude properties). > One problem with the current patch: It does *not* instrument the backwards > branch, so you see only coverage of the core/contrib tests. Getting the > coverage also from the backwards tests is not easy possible because of two > things: > - the tag test dir is not easy to find out and add to <testsources> element > (there may be only one of them) > - the test names in BW branch are identical to the trunk tests. This > completely corrupts the linkage between tests and code in the coverage report. > In principle the best would be to generate a second coverage report for the > backwards branch with a separate clover DB. The attached patch does not > instrument the bw branch, it only does trunk tests. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org For additional commands, e-mail: java-dev-h...@lucene.apache.org