Cómo Appium implementa la operación multidispositivo en iOS - TesterHome
Se debe cumplir lo siguiente:
Credenciales de desarrollador de cuenta de desarrollador de Appium
Dispositivo Appium Asegúrese de que el dispositivo esté configurado como dispositivo de desarrollo. Configuración de la máquina
Firmar un archivo .ipa o código fuente
Herramientas de desarrollo de Mac con Xcode y la línea de comandos de XcodeLínea de comandos de XcodexcodeMac con Xcode y la línea de comandos de XcodeNo me preguntes sobre problemas de Windows con pruebas de aplicaciones iOS
Perfil de aprovisionamiento
Nuevamente, la máquina real debe estar certificada con el perfil de aprovisionamiento
La aplicación debe estar firmada como participante de Appium
Requiere la firma de archivos .ipa o código fuente.
>La aplicación debe estar firmada con Appium. Consulte el uso de Fruitstrap para instalar la aplicación
Luego use xcode para instalar la computadora real
Ampliar: Perfil de aprovisionamiento
Ejecutar
Para especificar dos tipos de estilos para la ejecución de una máquina real:
Especifique el paquete de aplicaciones udid appium -U --app cuando se inicia appium
O script para especificar dos funciones requeridas p>
desired_capabilities={
'app':'com.xxx.iphone',
'udid':'70643e56c1b0f3c3132c44c87e433a48b5531ee6',
' platformName': 'iOS',
'deviceName': 'iPhone'
})
Nota: El dispositivo no tiene aplicación instalada Especifique la dirección ipa que se instalará
Luego especifique el ID del paquete
En el primer caso, el código es el siguiente:
self.driver = webdriver.Remote(
command_executor='',
desired_capabilities={'dispositivo': 'iPhone'
'dispositivo': 'iPhone'}).
'deviceName': '',
'platformName': 'iOS',
})
En el segundo caso, el código es el siguiente:
app = "io.appium.TestApp"
self.driver = webdriver.Remote(
command_executor='',
desired_capabilities={
'nombredispositivo': '',
'nombreplataforma': 'iOS',
'aplicación': aplicación ,
'udid': 'cc6bcd6a94aeb8490924dd05c5b318bfbfbfafb3bb'
})
Pensamientos de depuración
Asegúrese de que el UDID sea de hecho el UDID de la máquina real (20 cadenas)
Asegúrese de que el simulador haya podido
Usar instrumentos directamente para ver si puede ejecutar algo en la máquina real. Incluso los instrumentos xcode se pueden depurar en la máquina real. máquina, y mucho menos appium
Antes de ejecutar los ejemplos de appium, asegúrese de que Instruments no esté iniciado y vea si no hay ningún proceso de Instruments
Errores actuales de 1.2.2
Actualmente, al ejecutar appium 1.2.2 para pruebas de iOS en el mundo real, es posible que encuentre el siguiente error:
info: [depuración] Control a través del dispositivo
Iniciar la captura de registros del dispositivo iOS
Error: Error en la captura de registros de iOS: generar ENOENT
Información: [depuración] Limpiar sesión de Appium
Error: No se pudo iniciar una Sesión de Appium, el error fue: Error: generar ENOENT
información: [depuración] Error: generar ENOENT
en errnoException (child_process.js: 1000:11)
en Process.ChildProcess._handle.onexit (child_process.js:791:34)
info: [depuración] Respondiendo al error del cliente: {"status": 33, "value": {"message ": "No se puede crear una nueva sesión (", "value": {"message": "No se pudo crear una nueva sesión.") Error original: spawn ENOENT)", "code": "ENOENT", "errno" : "ENOENT", "syscall": "spawn", "origValue": "spawn ENOENT"}, "sessionId": null}
info: lt -- POST /wd/hub/session 500 1780,745 ms - 197
/usr/local/lib/node_modules/appium/build/deviceconsole/ falta la consola del dispositivo y ya tiene errores Trackback
Solución:
Parte inferior de el directorio cd /usr/local/lib/node_modules/appium/build/deviceconsole/
Pulsa el proyecto de deviceconsole y abre deviceconsole.xcodeproj
reconstruye la copia de la consola del dispositivo /usr/local/lib/ node_modules /appium/build/deviceconsole/
volver a ejecutar Appium