© S&S Media
Automatische Qualitätskontrolle für C# und Visual Studio

Mit SonarQube in the Loop


Fehler, die der Kunde im laufenden Betrieb findet, sind teuer. Fehler, die in der Entwicklungsphase gefunden werden, sind günstiger zu beheben. Am besten wäre es, Fehler von vornherein zu vermeiden. Ein Schritt in diese Richtung ist die Beachtung von Best und Worst Practices für den C#-Code. Wurden wirklich alle IDisposables disposed? Entspricht der Code den Coding Guidelines und ist dadurch leicht lesbar und wartbar? SonarQube nimmt sich genau dieses Problems an. Der Quellcode wird nach Unsauberkeiten durchsucht, die Ergebnisse werden zentral gesammelt und über ein Webportal zur Verfügung gestellt. Seine Wurzeln hat SonarQube in der Java-Community. Mittlerweile ist das Werkzeug aber auch gut in Visual Studio, VSTS und TFS integriert. In diesem Artikel erfahren Sie, was SonarQube kann und wie Sie erfolgreich damit starten.

Automatische Analyse der Quellcodequalität ist in Visual Studio schon lange ein Thema. Sie haben in der Vergangenheit vielleicht selbst Tools wie StyleCop, FxCop oder Visual Studio Code Analysis verwendet. Einer der Nachteile dieser Tools ist, dass sie nur eine Zeitpunktbetrachtung erlauben. Wäre es nicht schön, wenn Analyseergebnisse zentral gesammelt und mit einer leicht zugänglichen Weboberfläche über einen längeren Zeitraum betrachtet werden könnten? Genau das macht SonarQube. Microsoft hat 2015 begonnen, in Kooperation mit dem SonarQube-Team das Tool sowohl in Visual Studio als auch in TFS zu integrieren [1].

Gebotene Funktionalität

SonarQube ist ein quelloffener Server, der so genannte Quality Snapshots in einer Datenbank speichert und eine Webseite dafür anbietet. Dazu gehören Scanner, die den Quellcode analysieren und nach Fehlern oder Unschönheiten („Code Smells“) durchsuchen. SonarQube zeichnet sich durch Erweiterbarkeit aus. Plug-ins sind für die unterschiedlichsten Plattformen und Programmiersprachen verfügbar [2]. Für uns als Microsoft-Entwicklerinnen und Entwickler besonders wichtig: Es gibt Plug-ins für C#, TFS Version Control und Azure Active Directory, die in SonarQube unter Administration über System | Update Center installiert werden können.

Installation

Es versteht sich von selbst, dass die SonarQube-Dokumentation eine Installationsanleitung enthält [3]. Ich rate jedoch von einer manuellen Installation ab. Es gibt eine wesentlich zeitsparendere Möglichkeit, nämlich die Verwendung des fertigen, offiziellen Docker Images sonarqube. Dadurch erhält man einen fertig installierten SonarQube-Server, ohne selbst auch nur e...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang