objective c - ¿Puedo integrar Jenkins y XCTest?
objective-c ocunit (5)
Dos opciones:
1) canalice su salida xcodebuild en xcpretty y use su formateador Junit. Entonces Jenkins puede publicar eso.
B) usa xctool en lugar de xcodebuild. Xctool ha incorporado un reportero de Junit que puede especificar para las pruebas.
Hemos hecho ambas cosas y ambas funcionan bien en Jenkins.
¿Es posible usar Jenkins con XCTest?
Hay un script de ruby (OCUnit2JUnit - https://github.com/ciryon/OCUnit2JUnit ) que analiza el resultado de OCUnit y crea archivos XML que Jenkins puede analizar.
¿Hay algo equivalente para manejar la nueva salida XCTest?
En este momento, usar la integración continua de Apple no es una posibilidad.
Esto es lo que corro en mi proyecto de Jenkins después de instalar ocunit2junit en mi máquina de compilación:
xcodebuild test -scheme <my_scheme> -configuration Debug -sdk iphonesimulator7.0 -destination OS=7.0,name="iPhone Retina (4-inch)" | ocunit2junit
Luego agregué un informe de resultados de la prueba Publicar JUnit como una acción de compilación posterior. Al principio era un poco raro (solo creé los archivos xml cuando no había acción de post-compilación), pero después de iniciar la compilación directamente en mi máquina de compilación, funciona.
Necesita agregar una fase de compilación de script de shell.
Primero agrega la gema ocunit2junit a la máquina de compilación:
sudo gem install ocunit2junit
A continuación, agregue el script de shell de fase de compilación y asegúrese de estar en el directorio del proyecto cuando ejecute el script:
xcodebuild -workspace yourWorkSpace.xcworkspace -scheme YourTestsScheme -configuration Debug clean test 2>&1 | ocunit2junit
A continuación, asegúrese de agregar la publicación publicar resultados de la prueba JUnit acción de compilación en el trabajo de Jenkins configurado para encontrar el resultado para ocunit2junit: ** / test-reports / *. Xml
para mi no funciona también en la página de bienvenida de Github del Projekt XCTest no se menciona que sea compatible. Entonces parece que esto no es compatible
Escribí una herramienta que analiza el archivo pliego TestSummaries de la carpeta Logs / Test y genera el archivo xml del informe JUnit: ( https://github.com/nacuteodor/ProcessTestSummaries ). El informe generado debería ser más preciso que xcpretty.