Presentation is loading. Please wait.

Presentation is loading. Please wait.

Copyright Vincent Massol 2006 – All rights reserved Panorama of Quality Features in Maven2 Vincent Massol, 11 July 2006

Similar presentations


Presentation on theme: "Copyright Vincent Massol 2006 – All rights reserved Panorama of Quality Features in Maven2 Vincent Massol, 11 July 2006"— Presentation transcript:

1 Copyright Vincent Massol 2006 – All rights reserved Panorama of Quality Features in Maven2 Vincent Massol, 11 July 2006 http://massol.net

2 Copyright Vincent Massol 2006 – All rights reserved Active Quality vs Passive Quality

3 Copyright Vincent Massol 2006 – All rights reserved Active quality = before the fact

4 Copyright Vincent Massol 2006 – All rights reserved Passive quality = after the fact

5 Copyright Vincent Massol 2006 – All rights reserved Both are required… … but moving to active is the direction to take

6 Copyright Vincent Massol 2006 – All rights reserved … and Maven can do both٭!

7 Copyright Vincent Massol 2006 – All rights reserved Quality plugins ● Surefire – JUnit and TestNG – Cargo and other container plugins ● PMD ● Checkstyle ● Verifier ● Clover ● Clirr ● Cobertura ● Jalopy ● JDepend ● JavaNCSS ● JDiff In MavenIn Mojo ● DBUnit ● Jardiff ● JCoverage ● FindBugs ● Simian In Mojo sandbox

8 Copyright Vincent Massol 2006 – All rights reserved Let’s review some plugins for… ● Tests (unit, integration and functional) ● Best practices (Checkstyle, PMD, etc) ● Test Percentage Coverage ● Binary compatibility

9 Copyright Vincent Massol 2006 – All rights reserved Common testing infrastructure for testing frameworks (JUnit, TestNG, etc)

10 Copyright Vincent Massol 2006 – All rights reserved New forking strategies: once, never, always

11 Copyright Vincent Massol 2006 – All rights reserved New integration test phase and Cargo plugin for automating J2EE application testing

12 Copyright Vincent Massol 2006 – All rights reserved Strategy for active checks ● Strategy – Fail the build upon test failure

13 Copyright Vincent Massol 2006 – All rights reserved Demo …

14 Copyright Vincent Massol 2006 – All rights reserved Let’s review some plugins for… ● Tests (unit, integration and functional) ● Best practices (Checkstyle, PMD, etc) ● Test Percentage Coverage ● Binary compatibility

15 Copyright Vincent Massol 2006 – All rights reserved Checkstyle, PMD, Findbugs can fail the build (active) or generate a report (passive)

16 Copyright Vincent Massol 2006 – All rights reserved Local Repo Build Tools Module Module to be checked build-tools.jarDepends on build-tools.jar Best practices concept

17 Copyright Vincent Massol 2006 – All rights reserved Strategy for active checks ● Strategy 1 – Turn on all agreed checks at beginning of project ● Strategy 2 – Activate some checks – Increase # of checks at each release

18 Copyright Vincent Massol 2006 – All rights reserved Demo …

19 Copyright Vincent Massol 2006 – All rights reserved Let’s review some plugins for… ● Tests (unit, integration and functional) ● Best practices (Checkstyle, PMD, etc) ● Test Percentage Coverage ● Binary compatibility

20 Copyright Vincent Massol 2006 – All rights reserved Clover, Cobertura plugins can fail the build (active) or generate reports (passive)

21 Copyright Vincent Massol 2006 – All rights reserved Module 1 Module 2 Module 3 Depends on Local Repository module1-clover.jar module2-clover.jar module3-clover.jar Build Dependency Clover plugin for Functional testing

22 Copyright Vincent Massol 2006 – All rights reserved … and aggregates reports at each parent POM level

23 Copyright Vincent Massol 2006 – All rights reserved Strategy for active checks ● Strategy – Check TPC at release – Set threshold to be this TPC – Fail the build when under this threshold – Repeat

24 Copyright Vincent Massol 2006 – All rights reserved Demo …

25 Copyright Vincent Massol 2006 – All rights reserved Let’s review some plugins for… ● Tests (unit, integration and functional) ● Best practices (Checkstyle, PMD, etc) ● Test Percentage Coverage ● Binary compatibility

26 Copyright Vincent Massol 2006 – All rights reserved Clirr performs comparisons between releases to detect binary compatibility changes

27 Copyright Vincent Massol 2006 – All rights reserved Can fail the build upon errror (active) or generate reports (passive)

28 Copyright Vincent Massol 2006 – All rights reserved Strategy for active checks ● Strategy – Fail the build upon violation – Add to exclude file when incompatibility wanted – Publish exclude file as part of release notes ● Warning: Currently missing fine- grained exclusions

29 Copyright Vincent Massol 2006 – All rights reserved Demo …

30 Copyright Vincent Massol 2006 – All rights reserved What’s missing? What’s the future?

31 Copyright Vincent Massol 2006 – All rights reserved Quality Dashboard

32 Copyright Vincent Massol 2006 – All rights reserved ● Commits per day, who’s doing commits? ● Who’s working on tests? ● Who’s answering mailing lists? ● Who’s applying patches? ● Who’s writing documentation, blogging about it, etc? => Ability to jauge activity on the projects Project Health Dashboard Project Activity Dashboard

33 Questions Me


Download ppt "Copyright Vincent Massol 2006 – All rights reserved Panorama of Quality Features in Maven2 Vincent Massol, 11 July 2006"

Similar presentations


Ads by Google