Pruebas de software: ¡cómo funciona Appium de automatización de aplicaciones!

pregunta

¿Qué utilizas para la automatización del lado de las aplicaciones en el trabajo?

¿Has utilizado el marco de Appium?

¿Está familiarizado con Appium?

¿Cómo impulsa el funcionamiento de los teléfonos móviles el principio subyacente de Appium?

Punto de inspección

El entrevistador quiere saber:

  • ¿Has utilizado el marco de Appium?
  • ¿Está familiarizado con las API comunes del marco de Appium?
  • ¿Existe alguna solución para controles especiales y operaciones especiales en terminales móviles?
  • ¿Has visto el código fuente de Appium?
  • ¿Entiende el principio de funcionamiento subyacente del marco de Appium?

Puntos técnicos

Puntos técnicos involucrados:

  • API de aplicación
  • Protocolo de comunicación subyacente de Appium
  • Principio del marco de Appium

respuesta

Primero, presente el marco de Appium y explique las características del marco correspondiente; luego dibuje un diagrama esquemático de comunicación para explicar; explique la API de operaciones comunes; y finalmente haga un resumen general.

Introducción al marco de Appium

¿Qué es el apio?

En primer lugar, Appium es un marco de código abierto con un ecosistema rico, una comunidad sólida y ha sido mantenido por desarrolladores;

Es una herramienta flexible de automatización de pruebas multiplataforma que puede realizar ejecuciones de pruebas automatizadas en aplicaciones móviles en dispositivos iOS, Android, Windows y Mac, y puede utilizar la misma API para escribir scripts de prueba para múltiples plataformas;

Appium, similar a Selenium, es un marco de automatización en varios lenguajes y se puede combinar con cualquier marco de prueba; los scripts de prueba se pueden escribir en diferentes lenguajes de programación, incluidos Java, JavaScript, PHP, Ruby, Python y C#.

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036

Appium Communication: introducción a cada terminal

El cliente envía instrucciones automatizadas al servidor Appium. Después de recibir las instrucciones enviadas por el cliente, el servidor Appium las convierte en instrucciones que el terminal móvil puede reconocer y luego las envía al dispositivo móvil. El dispositivo móvil opera de acuerdo con las instrucciones. .

La siguiente figura muestra la interacción de comunicación automatizada:

Cliente

El cliente debe ejecutar el código escrito del proyecto de automatización y utilizar la API proporcionada por el cliente Appium para escribir casos de uso.
Entre ellos, declare el objeto DesiredCapabilities y especifique la información relevante del dispositivo y la aplicación bajo prueba; el valor de AutomationName especificado en el objeto DesiredCapabilities es UiAutomator2, para que se pueda crear una sesión de Android a través de Appium Server.

En el código del proyecto de automatización, primero solicita crear una instancia de AndroidDriver y debe pasar la URL del servidor Appium y el objeto DesiredCapabilities.

Servidor de aplicaciones

El número de puerto predeterminado que ocupa Appium Server cuando se inicia es 4723. Su función principal es monitorear las solicitudes de API.
Reciba los comandos enviados por el cliente, conviértalos en instrucciones que puedan ser reconocidas por el terminal móvil, envíelos al dispositivo móvil para su operación y luego espere a que el dispositivo móvil devuelva los resultados de la operación.
Appium Server recibe los resultados devueltos por el dispositivo móvil y luego envía los resultados de la operación al Cliente.

Entre ellos, el servidor Appium se puede colocar en el lado del cliente junto con el código del proyecto de automatización, o se puede colocar en la nube.
Si se coloca en el lado del cliente junto con el código, la dirección IP de Appium Server es 127.0.0.1;
si se coloca en la nube, la dirección IP de Appium Server es la dirección IP del servidor en la nube.

terminal móvil android

Appium se basa en el protocolo JSON Wire e implementa pruebas automatizadas de la aplicación llamando al comando UIAutomatior.
Entre ellos, el marco de prueba UIAutomator es la biblioteca Java de prueba de automatización de UI de la aplicación que viene con el SDK de Android.

Resumir

El cliente envía una solicitud a Appium Server y Appium Server convierte la solicitud al terminal móvil. Una vez completada la operación del terminal móvil, el contenido de la respuesta se devuelve a Appium Server y Appium Server devuelve el resultado al cliente.

Comunicación de Appium de extremo a extremo

Cliente y servidor Appium

El cliente solicita crear una sesión de controlador y pasa los parámetros de inicio de capacidades declaradas al servidor Appium a través del puerto 4723;

Appium Server redirige al módulo de controlador correspondiente según el atributo de nombre de automatización en las capacidades.
Si el nombre de automatización es uiautomator2, Appium Server redirige al controlador UIAutomator2, luego crea una sesión y genera el ID de sesión correspondiente.

Appium Server y terminal móvil Android

Instalación de APK

  • configuración de aplicación

Para ejecutar aplicaciones en teléfonos Android, Appium requiere ciertos permisos para controlar la configuración del sistema.
Appium instala una pequeña aplicación io.appium.settings. Después de una instalación exitosa, Appium Settings se ejecuta en segundo plano.

  • servidor uiautomator2

Dado que está utilizando el controlador UIAutomator2, debe instalar la aplicación relacionada con el controlador en su teléfono Android, es decir,
appium-uiautomator2-server-xx.apk.

Una vez completada la instalación, se asignan el puerto 8200 del servidor Appium y el puerto 6790 del dispositivo Android , y la comunicación se realiza a través del enlace asignado.

Resumir

  1. El cliente envía instrucciones de operación a Appium Server
  2. Appium Server envía solicitudes de protocolo JWP al servidor appium-uiautomator2 de Android a través de appium-uiautomator2-driver
  3. appium-uiautomator2-server llama a Google UIAutomator2 del sistema Android para realizar operaciones de automatización específicas
  4. Una vez completada la operación, el objeto de resultado AppiumResponse se devuelve a appium-uiautomator2-driver y AppiumServer lo devuelve al cliente, quien obtiene el resultado final de la operación.

Aviso

  • El protocolo de comunicación entre el controlador appium-uiautomator2 y el servidor es el protocolo JWP
  • El AndroidDriver se crea siguiendo el protocolo W3C.

Finalmente, me gustaría agradecer a todos los que leyeron atentamente mi artículo. Mirando el aumento de fans y atención, siempre hay algo de cortesía. Aunque no es algo muy valioso, si puedes usarlo, ¡puedes llevarlo directamente!

Documento de entrevista de prueba de software

Debemos estudiar para encontrar un trabajo bien remunerado. Las siguientes preguntas de la entrevista son los últimos materiales de entrevista de empresas de Internet de primer nivel como Alibaba, Tencent, Byte, etc., y algunos jefes de Byte han dado respuestas autorizadas. Después de terminar este conjunto Creo que todos pueden encontrar un trabajo satisfactorio según la información de la entrevista.
 

Insertar descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/jiangjunsss/article/details/132817345
Recomendado
Clasificación