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

Bedrohungen in Europa: Schwachstellen in der Lieferkette dominieren

Hinter 84 Prozent der Zwischenfälle bei Herstellern stecken Schwachstellen in der Lieferkette. Auf dem Vormarsch…

5 Tagen ago

Bericht: Apple arbeitet an faltbarem iPad

Es kommt angeblich 2028 auf den Markt. Das aufgeklappte Gerät soll die Displayfläche von zwei…

6 Tagen ago

HPE baut Supercomputer am Leibniz-Rechenzentrum

Das System basiert auf Hardware von HPE-Cray und Nvidia. Die Inbetriebnahme erfolgt 2027.

6 Tagen ago

Bund meldet Fortschritte in der Netzversorgung

Die Bundesnetzagentur hat ihr Gigabit-Grundbuch aktualisiert. Drei von vier Haushalten sollen jetzt Zugang zu Breitbandanschlüssen…

6 Tagen ago

Vorinstallierte Schadsoftware auf IoT-Geräten

Mit dem Internet verbundene Digitale Bilderrahmen oder Mediaplayer können mit Schadsoftware infiziert werden und sind…

1 Woche ago

iOS und iPadOS 18.2 beseitigen 21 Sicherheitslücken

Schädliche Apps können unter Umständen einen Systemabsturz auslösen. Mindestens eine Anfälligkeit erlaubt eine Remotecodeausführung.

1 Woche ago