Preparación de pruebas XCUITest para la carga
Importante
Visual Studio App Center está programado para su retirada el 31 de marzo de 2025. Aunque puede seguir usando Visual Studio App Center hasta que se retire por completo, hay varias alternativas recomendadas a las que puede considerar la posibilidad de migrar.
Obtenga más información sobre las escalas de tiempo de soporte técnico y las alternativas.
En esta guía se proporcionan instrucciones para preparar las pruebas XCUITest para cargarlas en App Center Test.
Requisitos del servicio de prueba
- Xcode >= 9.4.1
- iOS >= 9.0
Limitaciones del servicio de prueba
- Solo se puede probar la aplicación cargada, no las interacciones a través de aplicaciones o el resto del sistema.
Compilación para pruebas
Para ejecutar una prueba en App Center, debe compilar la aplicación y un lote XCUITest. Ejecute uno de los dos comandos siguientes desde la raíz del directorio del proyecto de aplicación:
# How to build a xcodeproj
rm -rf DerivedData
xcrun xcodebuild build-for-testing \
-configuration Debug \
-project YOUR_XCODEPROJ \
-sdk iphoneos \
-scheme YOUR_APP_SCHEME \
-derivedDataPath DerivedData
YOUR_XCODEPROJ
debe apuntar a un .xcodeproj
archivo, probablemente titulado PROJECT_NAME.xcodeproj
. Si usa un .xcworkspace
, use -workspace
en lugar de -project
. YOUR_APP_SCHEME
debe ser el esquema que se usa para compilar la aplicación. De forma predeterminada, suele ser el nombre de la aplicación.
El xcrun compilará la aplicación y un lote XCUITest en el DerivedData/Build
directorio. La aplicación y el lote XCUITest se ubicarán en el DerivedData/Build/Products/Debug-iphoneos/
directorio.
xcrun xcodebuild -list
Carga de pruebas en App Center
Una vez preparado un conjunto de pruebas, configure una ejecución de pruebas para cargar y ejecutar las pruebas.
Este es un ejemplo de cómo puede cargar el conjunto XCUITest en App Center Test.
# Upload your test to App Center
appcenter test run xcuitest \
--app "APP_ID" \
--devices "DEVICE_SET_ID" \
--test-series "main" \
--locale "en_US" \
--build-dir DerivedData/Build/Products/Debug-iphoneos
Para obtener un ejemplo concreto de envío de pruebas a App Center, consulte este script de shell que envía pruebas a App Center.
Capturas de pantalla adicionales y pasos de prueba
Al final de cada método de prueba, se toma automáticamente una captura de pantalla para el informe de prueba. Cada captura de pantalla se muestra en el informe de pruebas de App Center como un paso de prueba independiente.
Actividades
Puede generar etiquetas y capturas de pantalla adicionales para un método de prueba mediante la agrupación del código de Activities
prueba mediante el . Para obtener más información, vea Agrupar pruebas en subpasos con actividades.
Fragmento de código para ajustar el código de prueba en una actividad
[XCTContext
runActivityNamed:title
block:^(id<XCTActivity> _Nonnull activity) {
// test code
}];
XCTContext.runActivity(named: title) { (activity) in
// test code
}
Capturas de pantalla manuales
Se genera automáticamente una captura de pantalla para el informe de prueba al final de cada Activity
. Puede grabar una captura de pantalla en un punto diferente en una Activity
captura de pantalla mediante XCUIScreen y, a continuación , crear un archivo adjunto con XCTAttachment y agregarlo al objeto actual Activity
. Esta captura de pantalla se mostrará en Informes de pruebas de App Center en lugar de la captura de pantalla predeterminada del final de Activity
.
Fragmento de código para generar y adjuntar una captura de pantalla en una actividad
XCUIScreenshot *screenshot = [[XCUIScreen mainScreen] screenshot];
XCTAttachment *attachment;
attachment = [XCTAttachment attachmentWithScreenshot:screenshot];
[attachment setLifetime:XCTAttachmentLifetimeKeepAlways];
[activity addAttachment:attachment];
let screenshot = XCUIScreen.main.screenshot()
let attachment = XCTAttachment(screenshot: screenshot)
attachment.lifetime = .keepAlways
activity.add(attachment)