Startseite > Techblog > Softwareentwicklung > Die Code Quality in Java Projekten erhalten (Teil I) ...
tis

Maven basierte Build-Prozesse haben sich in den letzten Jahren zunehmend zur Erzeugung der Entwicklungs- und Releasemodule etabliert. Neben dieser Aufgabe bieten sie auf sehr einfacheWeise die Möglichkeit, Reports (z.B. JUnit, PMD, u.a.) und Dokumentationen (Java Doc) der Softwaremodule zu erzeugen.

Vor allem die Checkstyle, PMD und FindBugs – Reports stellen wichtige Informationen bereit, die Aufschluss über die Qualität des Source Codes bieten. Letztendlich enthalten sie Richtlinien oder Wissen zu bestimmten Problemstellen im Source Code.

Da die Entwicklungszeiten in den Softwareprojekten knapp sind bleiben die per Nightly Build erzeugten Reports meist ungenutzt. Die manuelle Auswertung vor allem in der heißen Phase vor der Fertigstellung der Softwareprojekte wird meist aus Zeitgründen nicht mehr ausgeführt. So bleiben wichtige “Ratschläge” der Reports unberücksichtigt und potentielle Fehlerquellen werden mit in den Wirkbetrieb der Softwaremodule übernommen.

Um kontinuierlich von den Reports zu profitieren suchten wir nach einer Möglichkeit, die Ergebnisse der Reports automatisch zu berücksichtigen. Da bereits die technische Infrastruktur durch einen Continuous Integration Server vorhanden war und die Softwaremodule beim Einchecken durch die Entwickler gebaut wurden, lag die Unterbrechung des Builds im Fehlerfall am nächsten.

Und genau dafür bieten die genannten Maven Plugins (getestet mit Maven1) die Möglichkeit, den Buildprozess beim Auftreten von Fehlern zu unterbrechen.

PMD
maven.pmd.failonerror=true
maven.pmd.failonruleviolation=true

CheckStyle
maven.checkstyle.fail.on.violation=true

FindBugs
maven.findbugs.failOnError=true

Während man die Art der durchzuführenden Tests im Fall des PMD und FindBugs-Plugins sehr fein bestimmen kann, fehlt diese Abstufung im Falle des Checkstyle Plugins. In den kommenden Beiträgen wird mehr über die Konfiguration und die Möglichkeiten der Plugins zu lesen sein.

Kommentar Feed Trackback URL

Hinterlassen Sie einen Kommentar

Tag Cloud

Unsere Themen

Kommentare

  • SharePoint_Team: Rückblick zum Treffen der .NET Usergroup Dresden am 24.02.2010: im #Communardo #Techblog...
  • TorstenHu: Rückblick zum Treffen der .NET Usergroup Dresden am 24.02.2010: im #Communardo #Techblog...
  • SharePoint_Team: Neuer Blogpost zur #BastaCon im #Communardo #TechBlog: http://tinyurl.com/yjqyqpb This comment was...
  • SharePoint_Team: Nur noch etwa 1 Stunde, dann beginnt die .NET Usergroup… http://bit.ly/dxDoKg This comment was...
  • SharePoint_Team: RT @TorstenHu: ViS is waiting for an operation oder Warum Copy & Paste schlecht ist: #Communardo...

Twitter