On Sun, Jul 29, 2018 at 5:56 PM, Vincent Massol <[email protected]> wrote:
> Hi devs,
>
> During XWiki SAS’s hackathon last week, Simon and me worked on implementing 
> test coverage computation for velocity code and more precisely to measure the 
> code coverage we get in XWiki XML pages when running our tests.
>
> The rationale is that we know what’s our java test coverage but we have no 
> clue about the velocity one. And we have a lot of code in velocity scripts in 
> wiki pages. Thus we need a strategy for this too if we wish to increase our 
> global code quality.
>
> So we have currently developed 2 mojos (xar:instrument and 
> xar:reportCoverage) in the XAR plugin code and created a JIRA issue, see 
> XCOMMONS-1448.
>
> Here’s the proposal I’d like your opinion on:
> * Finish working on this to stabilize it and commit/push it
> * Apply the same strategy we have with Jacoco for java test coverage, i.e. 
> introduce a new xar:coverageCheck mojo that will fail the build if we get a 
> global TPC under the threshold mentioned in the POM
>
> Consequences:
> * It will mean that whenever we add new velocity scripts (especially when 
> there are branches such as #if) we will need to improve or add XAR page 
> tests. This can be done in 2 ways:
> ** by writing/improving a functional UI test
> ** by writing/improving a XAR unit test
> * We will find places that have 0% coverage and these will be good candidates 
> to add tests for
>
> My POV:
> * We should have the minimum # of functional UI tests since they take very 
> long to execute. We need them but we shouldn’t test the various branches with 
> them IMO. Only one path.
> * Instead we should focus on have more of XAR unit tests since they execute 
> fast and are better suited (with mocks) to test the various branches
> * The XAR unit test framework we have is still pretty new and it’s probably 
> not to easy to write unit tests for wiki pages in some cases, we will need to 
> work on that as we discover them. I’m happy to help on that.
>
> WDYT?
>
> Personally I’m ok to try it and see what happens.
>
> Thanks
> -Vincent

+1

Reply via email to