Frage

mein Team derzeit verwendet buildbot über Nacht zu automatisieren und kontinuierliche Integration Builds und Regressionstests. Für baut und Unit-Tests, ruft die Baumeister nur ein Skript, das die Quellen von p4 synchronisiert und läuft dann xcodebuild. Die Regressionstests werden auch durch einen Shell-Skript gestartet, und sind selbst Kombinationen von Shell-Skripten und Applescripts. Die Builds sind alle auf einem System durchgeführt, aber dann Tests buildbot löst auf mehreren Macs, mit unterschiedlicher Architektur und OS-Kombinationen passieren. Die Dinge, die ich über buildbot mag, sind die automatischen Auslöser (so die Tests laufen nur dann, wenn der Build erfolgreich) und die Berichterstattung einschließlich der Wasserfall Ansicht des Gesamtstatus zu sehen.

Allerdings sehe ich auch eine Reihe von Problemen. Der „Master“ Prozess, der die Builds Koordinaten entweder undicht oder hat nur einen großen Arbeitssatz, was bedeutet, dass es ein paar Gigabyte Speicher verbraucht. Gelegentlich bedeutet Netzwerkprobleme, dass ein Slave verloren gehen; später statt erneuten Versuch wird es nur die Build fehl. In der Tat, wenn der Slave für eine abhängige Build ausgelöst werden soll, wird es die erste Build fehlschlagen, nachdem es sonst erfolgreich abgeschlossen wird.

Also, was ist der Rest von Ihnen mit Ihrem Xcode baut und Unit-Tests zu automatisieren? Wie funktionieren diese Lösungen für Sie? Alles, was Sie empfehlen würden?

War es hilfreich?

Lösung

Ich benutze Teamcity in einer Windows-Umgebung, aber ich glaube, es wird die Arbeit an Mac und hat Xcode Build-Agenten.

Eine weitere ähnliche Frage hier .

Andere Tipps

Unser Team verwendet Hudson mit einem Skript, das die Einheit Testausgabe von XCode NUnit-Format konvertiert.

Ich weiß, das ist eine ältere Frage, aber für die TFS mit ihren Xcode-Projekte zu halten, habe ich Aktivität eine benutzerdefinierte Build machen Automatisierung Xcode über TFS einfacher baut. Der Code wird hier auf Codeplex gehostet: http://tfsxcodebuild.codeplex.com/ .

Hope jemand findet es nützlich!

Wir arbeiteten heraus, was den gesamten Speicher wurde mit - Log-Dateien - ältere buildbot alle Protokolle hält für immer und hält sie im Speicher (möglicherweise bis zu einem Neustart).

Neuere buildbot konfiguriert werden kann, eine festgelegte Menge Geschichte zu halten.

Buildbot build Protokolldateien sollten in der Größe begrenzt werden, um das Problem zu vermeiden.

Ich verwende den XcodeBuilder das ist ein Teil von CruiseControl- . Natürlich hilft es, dass ich es geschrieben habe. :)

Aber ich habe es auf einem echten Mehrpersonen Projekt für ein iPhone app ( Surf ), das ist für Verkauf im App Store.

Jetzt, wo es drei Jahre später, das ich meine eigene Antwort haben auf diese Frage zu geben. Ich verwende Jenkins , vor allem für die Plug-Ins, die es bietet. Es hat ein Plug-in für den Bau Ziele in Xcode Projekten (oder Systeme in Arbeitsbereichen). Es ist ein Plug-in dem Clang statischen Analysator auszuführen. Die Verbindung zu meinem Bug-Tracker-System, wird es automatisch auch auf Testflug schieben baut.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top