Fehlerhaften .NET-Code schneller zur Strecke bringen

Vor einigen Jahren brauchte man sehr viel Zeit, um einen Build zu erstellen. Entwickler mussten daran erinnert werden, ihren Code vor der Freischaltung zu prüfen und der manuelle Erstellungsprozess war aufwendig. Natürlich zeigten sich Fehler, wenn man den Code eines Entwicklungsteams erstellte. Dann brauchte man Zeit, um die Probleme zu finden und auch zu lösen. Da man für dieses Verfahren viel Zeit brauchte, wurden Builds nicht so häufig erstellt. Builds aber erleichtern den Einsatz einer kontinuierlichen Integration.

Wenn man sich fragt, was einen erfolgreichen Build kennzeichnet, dann hängt die Antwort vom jeweiligen Projekt und der Umgebung ab, doch im Allgemeinen kann man sagen, dass es die erfolgreiche Kompilierung und Installation aller Quellen sowie eine bestandene Testreihe im System ist. Man muss eine Reihe von Tools verwenden, um dies umzusetzen; automatisches Testen ist nicht notwendig, aber äußerst empfehlenswert.

Tools

Die folgenden Tools sind nötig, um in einer .NET-Umgebung eine kontinuierliche Integration umzusetzen:

  • Quellcode-Kontrolle: Damit können mehrere Entwickler an einem Anwendungscode arbeiten, indem sie Quellecode-Dateien ein- und auschecken und neue Dateien hinzufügen. Visual Sourcesafe ist sehr verbreitet, doch gibt es noch viel bessere Möglichkeiten, wie zum Beispiel Subversion, IBMs Rational Clearcase, CVS und Sourcegear Vault.
  • Compiler: Man kann den Kommandozeilen-Compiler in .NET Framework, Visual Studio .NET oder eine andere IDE verwenden.
  • Server für kontinuierliche Integration: Das ist die oberste Kontrolle für den Erstellungsprozess. Er überwacht das Quellcode-Repository auf Check-ins von Entwicklern. Wenn neuer Code eingestellt wird, wird die letzte Version aufgerufen und der Erstellungsprozess gestartet. Der letzte Schritt dieses Prozesses besteht darin, dem Team den Erstellungsstatus per E-Mail, Webseiten und so weiter mitzuteilen. Es gibt unterschiedliche Produkte dafür, besonders zu empfehlen ist Cruisecontrol.NET. Eine andere Möglichkeit ist das frei erhältliche Draco.NET. Für dieses Element braucht man einen dedizierten Server.
  • Automatisierungstool für die Erstellung: Man braucht ein Tool, um die Erstellung der Quelldateien zu automatisieren. Eine hervorragende Möglichkeit ist das frei erhältliche Nant, man kann aber auch Make file verwenden. Zieht man zur Automatisierung Cruisecontrol.NET heran, kann dessen neueste Version direkt mit Visual Sourcesafe kommunizieren, so dass ein Tool wie Nant zur Automatisierung des Erstellungsprozesses möglicherweise nicht mehr nötig ist.

  • Optionales Testen von Units: Führt man Tests von Units während des Integrationsprozesses durch, kann sauber funktionierender Code besser überprüft werden. Ein hervorragendes Tool ist Nunit, das frei erhältlich ist und zu dem online sehr viel Information zur Verfügung steht.

Anmerkung: Installation und Konfiguration dieser Tools sind nicht Thema dieses Artikels, doch enthalten die Dokumentationen der Web-Community zu den Produkten alle Informationen, die man braucht, um diese Tools zu benutzen.

Bereit für den Einsatz von kontinuierlicher Integration?

Kontinuierliche Integration ist kein Allheilmittel für fehlerhaften Code, kann aber auf jeden Fall Zeit für dringendere Probleme freimachen. Entwickler müssen immer noch soliden Code schreiben und gute Unit-Tests helfen ihnen dabei. Darüber hinaus sollte Code regelmäßig gecheckt werden (am besten tägliche Check-ins). Auf jeden Fall kann der Einsatz von kontinuierlicher Integration dazu beitragen, die Qualität des Codes, der Tests, des Designs und so weiter aufzuwerten. Dadurch wird zwar Zeit frei, die man normalerweise für regelmäßige Builds verwenden würde, doch muss man dafür den dedizierten Server für die kontinuierliche Integration einrichten und verwalten.

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Adobe schließt neun kritische Lücken in Reader und Acrobat

Das jüngste Update bringt insgesamt zwölf Fixes. Schadcode lässt sich unter Umständen ohne Interaktion mit…

3 Tagen ago

Fabrikautomatisierung: Siemens integriert SPS-Ebene

Eine softwarebasierte Workstation soll es Ingenieuren erlauben, sämtliche Steuerungen zentral zu verwalten. Pilotkunde ist Ford.

3 Tagen ago

Ebury-Botnet infiziert 400.000 Linux-Server weltweit

Kryptodiebstahl und finanzieller Gewinn sind laut ESET-Forschungsbericht die vorrangigen neuen Ziele.

3 Tagen ago

Sicherheitslücken in Überwachungskameras und Video-Babyphones

Schwachstellen aus der ThroughTek Kaylay-IoT-Plattform. Dringend Update-Status der IoT-Geräte prüfen.

3 Tagen ago

AWS investiert Milliarden in Cloud-Standort Brandenburg

Fast acht Milliarden Euro fließen in die deutsche Region der AWS European Sovereign Cloud. Das…

3 Tagen ago

DSL oder Kabel – Welcher Anschluss passt zu Ihnen?

Internet in den eigenen vier Wänden ist heutzutage nicht mehr wegzudenken. Denn egal, ob Homeoffice…

4 Tagen ago