Este documento presenta las mejores prácticas para usar Firebase App Distribution y fastlane para hacer que los flujos de trabajo de prueba previos al lanzamiento de su plataforma Apple sean sostenibles y repetibles en un entorno CI/CD. Si bien este documento se centra en fastlane, también describimos las soluciones disponibles a través de Firebase console, Firebase CLI y la API pública de Firebase App Distribution para brindarle más flexibilidad. También describimos los límites de lanzamiento y prueba para que pueda planificar con anticipación una experiencia óptima.
Si también usa Android, consulte Prácticas recomendadas para distribuir aplicaciones de Android a evaluadores de control de calidad mediante CI/CD .
Antes de que empieces
Antes de implementar las mejores prácticas de este documento, asegúrese de habilitar la distribución de aplicaciones en Firebase console para cada aplicación . Si no ha habilitado la distribución de aplicaciones, recibirá un error 404.
Para habilitar la distribución de aplicaciones, siga estos pasos:
Abra la página Distribución de aplicaciones en Firebase console.
Seleccione su aplicación para iOS.
Haga clic en Comenzar .
Automatice su flujo de trabajo de pruebas previas al lanzamiento mediante CI/CD
Si desea automatizar la creación y lanzamiento de aplicaciones para sus evaluadores y está utilizando CI/CD, le recomendamos que utilice fastlane . Otra opción es utilizar Firebase CLI, que le permite acceder a una amplia gama de productos de Firebase.
usar carril rápido
Integre App Distribution en su canal de CI/CD usando fastlane, una herramienta de código abierto que automatiza la creación y lanzamiento de aplicaciones para iOS y Android. Al crear y distribuir automáticamente sus últimas versiones a los evaluadores, se asegura de que los evaluadores siempre tengan la versión de prueba más actualizada de su aplicación.
Para saber cómo integrar App Distribution con fastlane, consulte Distribuir aplicaciones de iOS a evaluadores mediante fastlane . Vea también un codelab que lo guiará a través del proceso de integración rápida.
Utilice la CLI de Firebase
Utilice las herramientas de Firebase CLI que proporciona App Distribution para distribuir compilaciones a los evaluadores mediante programación. Puede especificar probadores y notas de la versión para una compilación.
Distribuya su última compilación de iOS test.ipa
especificando el ID de la aplicación Firebase de la aplicación y, opcionalmente, agregando una nota de la versión y un archivo que contenga los correos electrónicos de los evaluadores:
firebase appdistribution:distribute test.ipa \ --app 1:1234567890:ios:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txt
Para obtener más información sobre el uso de Firebase CLI para automatizar tus compilaciones, consulta Distribuir aplicaciones de iOS a evaluadores mediante Firebase CLI .
Utilice credenciales de servicio para autenticarse
Utilice el complemento Fastlane de distribución de aplicaciones o Firebase CLI con cuentas de servicio, que aprovechan las credenciales predeterminadas de la aplicación y lo ayudan a administrar su CI. Una cuenta de servicio es un tipo de cuenta de Google que representa aplicaciones y no usuarios. Su sistema de CI puede usar cuentas de servicio para ejecutar sus cargas de trabajo de distribución de aplicaciones. Para obtener más información, consulte Autenticar con una cuenta de servicio .
Si utiliza la federación de identidades de cargas de trabajo, puede generar y utilizar un archivo de configuración de credenciales en lugar de una clave de cuenta de servicio.
Tenga en cuenta los límites de liberación
App Distribution admite un máximo de 1000 versiones por aplicación. Esto significa que cuando excede el límite de versiones, App Distribution elimina automáticamente las versiones más antiguas que superan el límite. Para saber cómo administrar los límites de lanzamiento, consulte ¿Durante cuánto tiempo están disponibles los lanzamientos de aplicaciones?
Agregue el mismo conjunto de probadores a varias versiones
Si desea agregar una gran cantidad de probadores a sus versiones, utilice la función de administración masiva de probadores de App Distribution.
Le recomendamos que utilice grupos para agregar los mismos evaluadores a varias versiones. Un grupo actúa como una lista de control de acceso; Cuando eliminas a un evaluador de un grupo, pierde el acceso a todas las versiones distribuidas a ese grupo. Para obtener más información, consulte Agregar y eliminar evaluadores de un grupo .
Si tiene que administrar muchos testers, puede agregarlos y eliminarlos de forma masiva mediante Firebase console. Para automatizar la adición y eliminación de evaluadores, use Firebase CLI , fastlane o la API pública de distribución de aplicaciones de Firebase .
Tenga en cuenta los límites del probador
App Distribution limita la cantidad de testers que puedes agregar a un proyecto de Firebase o a un grupo de App Distribution. Cuando superes estos límites, no podrás distribuir tu aplicación a evaluadores adicionales. Para obtener más información sobre los límites de los testers, consulte ¿Existen límites para agregar testers a mi aplicación?
Administre y agregue automáticamente nuevos dispositivos de prueba de iOS
Para ayudarlo a registrar dispositivos de prueba iOS adicionales, App Distribution lo ayuda a administrar sus dispositivos de prueba iOS en el Portal de desarrolladores de Apple informándole sobre nuevos dispositivos iOS de prueba por correo electrónico o archivos CSV. Para obtener más información, consulte Importar probadores desde archivos CSV . También puede exportar nuevos dispositivos mediante programación mediante fastlane .
Para aprender cómo configurar una acción de vía rápida que automáticamente extraiga los UDID, los agregue a la consola de desarrollador de Apple y luego reconstruya la aplicación y la distribuya, consulte Distribuya sus versiones preliminares de iOS más rápido con Distribución de aplicaciones y vía rápida .
Permitir que los evaluadores potenciales se registren automáticamente para las pruebas
Para facilitar la distribución de su aplicación a más evaluadores, le recomendamos que utilice enlaces de invitación. Un enlace de invitación es una URL única que permite a los evaluadores ingresar sus direcciones de correo electrónico para registrarse y probar una aplicación. Permitir que los usuarios se agreguen a su lista de probadores de aplicaciones es una manera perfecta de aumentar su base de pruebas interna.
Los casos de uso de enlaces de invitación incluyen programas de prueba interna de empresas, organizaciones con grandes equipos de control de calidad y grupos de desarrolladores que desean que clientes individuales puedan controlar el acceso de los evaluadores.
Le recomendamos que cree un enlace de invitación para un grupo. Cualquier evaluador que se registre mediante el enlace de invitación se agrega automáticamente a versiones posteriores.
Para obtener más información, consulte Crear enlaces de invitación y Agregar y eliminar evaluadores de un grupo .
Asegúrese de que los evaluadores estén probando la versión que le interesa
Cuando se carga una nueva versión, sus evaluadores reciben una notificación por correo electrónico. Para complementar esta notificación, puede utilizar las siguientes funciones (enlaces de lanzamiento y alertas en la aplicación) para asegurarse de que sus evaluadores estén probando la versión específica de la aplicación que le interesa:
Enlaces de versión: utilice esta función cuando desee compartir una versión específica con los evaluadores. Para aprender a usar enlaces de lanzamiento, consulte Distribuir aplicaciones de iOS a evaluadores mediante Firebase console . Estos enlaces también están disponibles con nuestras herramientas de línea de comandos (CLI) de Firebase y fastlane para usar con sus herramientas de automatización de compilación.
Alertas en la aplicación: utilice estas alertas cuando desee asegurarse de que sus evaluadores estén probando la última versión de su aplicación. Al integrar el SDK de iOS de Firebase App Distribution, puede mostrar alertas directamente dentro de la aplicación a sus evaluadores cuando haya nuevas versiones de su aplicación disponibles. Para saber cómo agregar alertas en la aplicación, consulte Notificar a los evaluadores sobre nuevas compilaciones .
Eliminar automáticamente el acceso de los testers que abandonan la empresa
Una vez que su flujo de pruebas internas de CI/CD esté en funcionamiento, debe asegurarse de que las personas que abandonan la empresa ya no tengan acceso a sus compilaciones internas. Para ayudarlo a administrar el acceso de los evaluadores a las compilaciones, App Distribution proporciona las siguientes opciones:
fastlane: utilice su archivo Fastfile o ejecute directamente acciones de fastlane. Para obtener más información sobre el uso de fastlane para eliminar evaluadores, consulte Distribuir aplicaciones de iOS a evaluadores mediante fastlane .
API de distribución de aplicaciones públicas de Firebase : utilice el punto final
testers.batchRemove
.