Pregunta

mi equipo está utilizando actualmente buildbot para automatizar toda la noche y continua integración construye y pruebas de regresión. Para construye y pruebas de unidad, el constructor simplemente invoca un script que sincroniza las fuentes de p4 y luego ejecuta xcodebuild. Las pruebas de regresión también son lanzados por una secuencia de comandos shell, y ellos mismos son combinaciones de secuencias de comandos shell y AppleScripts. Las compilaciones son todos ellos realizados en un solo sistema, pero luego buildbot desencadena pruebas a suceder en múltiples Macs, con diferentes combinaciones de arquitectura y sistemas operativos. Las cosas que me gustan de buildbot son los disparadores automáticos (por lo que las pruebas se ejecutan sólo si y cuando la acumulación tiene éxito), y la presentación de informes incluyendo la vista de la cascada para ver el estado general.

Sin embargo, veo una serie de problemas también. El proceso de "maestro", que coordina las compilaciones es o con fugas o simplemente tiene un gran conjunto de trabajo que significa que consume un par de gigabytes de memoria. De vez en cuando problemas de la red significan que un esclavo se perderá; en lugar de volver a intentar más tarde se acaba de fallar la construcción. De hecho, si se supone que el esclavo para ser activado por una acumulación dependiente, se producirá un error de la primera construcción de otra manera después de que ha terminado con éxito.

Así que lo son el resto de ustedes usando para automatizar su Xcode construye y pruebas unitarias? ¿Cómo funcionan las soluciones para usted? Cualquier cosa que usted recomendaría?

¿Fue útil?

Solución

TeamCity en un entorno de ventanas, pero creo que va a trabajar en Mac y tiene agentes Xcode construcción.

Otra cuestión similares aquí .

Otros consejos

Nuestro equipo utiliza Hudson con un script que convierte la salida de prueba de unidad de XCode a formato NUnit.

Sé que esto es una cuestión mayor, pero para aquellos que utilizan TFS para mantener sus proyectos de Xcode, creé una actividad de generación personalizada para hacer la automatización de Xcode construye a través de TFS más fácil. El código está alojado en CodePlex aquí: http://tfsxcodebuild.codeplex.com/ .

La esperanza alguien lo encuentra útil!

Hemos trabajado de lo que estaba usando toda la memoria - los archivos de registro - buildbot mayores mantiene todos los registros para siempre, y los guarda en la memoria (posiblemente hasta un reinicio).

buildbot nuevo puede ser configurado para mantener una cantidad fija de la historia.

Los archivos de registro Buildbot construcción deben tener un tamaño limitado para evitar el problema.

XcodeBuilder eso es parte de climatizador . Por supuesto que ayuda que la escribí. :)

Pero yo lo uso en un proyecto real múltiple persona por una aplicación para el iPhone ( Surf ) eso es para venta en la tienda de aplicaciones.

Ahora que es tres años más tarde tengo mi propia respuesta para proporcionar a esta pregunta. Estoy usando Jenkins , principalmente para los plug-ins que proporciona. Dispone de un plug-in para los objetivos de construcción en proyectos de Xcode (o esquemas en los espacios de trabajo). Hay un plug-in para ejecutar el Clang analizador estático . Interactúa con mi sistema de seguimiento de fallos, que empujará automáticamente construye a Testflight también.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top