Als Bauingenieur bin ich ständig auf der Suche nach neuen und interessanten Möglichkeiten, unseren Build-Prozess zu verbessern - und dazu gehört auch die Suche nach neuen und interessanten Möglichkeiten, unsere Builds zu versagen!
Ich muss noch eine kanonische Liste von Gründen finden, um einen Build zu scheitern ... also denke ich, es ist Zeit, einen zu erstellen. In diesem Sinne:
Welche Build-Time-Prüfungen - offensichtliche und kreative - haben Sie Fehler Builds gesehen?
In seinem Artikel zur Einführung von Continuous Integration präsentierte Martin Fowler Fehler beim Ausführen der Einheitentests der Anwendung als ein zwingender Grund, einen Build fehlzuschlagen.
Einführung einer zyklischen Abhängigkeit zwischen Modulen (zB Java-Pakete).
Mein Unternehmen tut dies eigentlich nicht, aber mit einer großen Legacy-Codebasis wie der unseren wäre es gut, bei undokumentierten Änderungen zu scheitern. Ohne ein Fehlerticket irgendeiner Art würde unsere QA-Abteilung nicht wissen, um die Änderungen zu testen, und das ist beängstigend!
Überprüfen Sie, ob doppelte Klassen (gleicher Paket- und Klassenname) in verschiedenen JAR-Dateien (Java) vorhanden sind.
Die Codeabdeckung verringert oder unterschreitet einen akzeptablen Schwellenwert.
Etwas so Einfaches wie eine Überprüfung des Kompilierungsfehlers sollte als obligatorisch betrachtet werden, nuff sagte .
Check-ins, die zu kaputten Builds führen, sollten inakzeptabel sein, obwohl die traurige Wahrheit ist, dass viele Organisationen solche akzeptieren.
Wenn die Kompilierung fehlschlägt:
Warum? WEIL DAS GEBILD GEBROCHEN ist.
Tags und Links build continuous-integration build-process build-automation