Llevarlo a diseñar casos de prueba de automatización de interfaces (1): extraer y analizar información de la interfaz

1. El estado del mercado de la industria de las pruebas.

Con los cambios en la demanda del mercado, la mayoría de las empresas presentarán los requisitos pertinentes para las pruebas de automatización de interfaces al contratar evaluadores.

En la actualidad, la arquitectura del software está básicamente separada del front-end y back-end, y las funciones principales del software las proporciona el servidor. Desde la perspectiva de todo el mercado de pruebas de software, la mayoría de los evaluadores todavía se centran en las pruebas funcionales y las pruebas de automatización de la interfaz de usuario, es decir, las pruebas de la página de inicio, y no implican demasiadas pruebas del lado del servidor. Sin embargo, debido al aumento de los costos de desarrollo de software y al ciclo de desarrollo y ciclo de iteración más cortos, solo las pruebas de la página de inicio ya no pueden cumplir con los requisitos de calidad del software.

El objeto principal de las pruebas del lado del servidor es la interfaz proporcionada por el servidor, por lo que también se denomina prueba de interfaz. La ventaja de las pruebas de interfaz es que la prueba puede realizarse con antelación antes de que se complete el desarrollo de una página de inicio. Cuanto antes se realice el trabajo de prueba, menor será el costo de resolver errores y más estable será el producto. Por lo tanto, las pruebas de automatización de interfaces casi se han convertido en la única forma de desarrollar probadores de automatización de UI.

Las pruebas de interfaz también se dividen en pruebas de interfaz manuales y pruebas de automatización de interfaz. Las pruebas de interfaz manuales generalmente se pueden realizar a través de herramientas de interfaz como posman o jmeter; una vez que las funciones de la interfaz se estabilizan, se pueden realizar pruebas de automatización de interfaz a nivel de código y una integración continua.

A juzgar por la demanda actual del mercado, la proporción de talentos de prueba de automatización de interfaces en el mercado es relativamente baja, el salario es alto y la brecha en el mercado es enorme.

El contenido de este artículo está extraído del libro "Proyecto de prueba de automatización de interfaz: Python 3.8 + Solicitudes + PyMySQL + pytest + Implementación de Jenkins", que adopta el modo basado en proyectos y establece un marco de prueba de automatización de interfaz básico y práctico a través de la biblioteca Python. . La estructura del contenido es la siguiente:        

2. El sistema bajo prueba basado en este artículo.


Este libro utiliza el sistema de blog ZrLog (https://www.zrlog.com/) como sistema bajo prueba.

Se eligió ZrLog por las siguientes razones:

El proceso de implementación es relativamente simple y las funciones y la lógica empresarial no son complicadas.
Los recursos de su interfaz incluyen operaciones comunes como agregar, eliminar, modificar y verificar, y los datos respondidos por el servidor también están en formato JSON estándar, estas condiciones brindan conveniencia para aprender el marco de prueba de automatización de la interfaz.
ZrLog tiene múltiples métodos de implementación, incluido el método Docker, que se utiliza en este libro para la implementación. Docker es una tecnología de contenedores. Un contenedor es un proceso que se ejecuta en un entorno aislado. Si el proceso se detiene, el contenedor será destruido. El programa se ejecuta en este contenedor virtual, como si se ejecutara en una máquina física real. Entonces, con Docker, no tienes que preocuparte por cuestiones ambientales.

3. Extraer información de la interfaz y analizarla.

La prueba de interfaz es principalmente para probar las operaciones de adición, eliminación, modificación y consulta de recursos del servidor, por lo que se extraen del sistema ZrLog cinco informaciones de interfaz relacionadas con la adición, eliminación, modificación y consulta, que son la interfaz de inicio de sesión y la publicación del artículo. interfaz e interfaz de modificación de artículo., interfaz de eliminación de artículo, interfaz de consulta de artículo. Antes de diseñar casos de prueba de interfaz, es necesario realizar una comprensión y un análisis preliminares de estas cinco interfaces y comprender la relación entre las interfaces, a fin de prepararse para el diseño de casos de uso de la interfaz.

1) Extracción y análisis de información de la interfaz de inicio de sesión.

La Figura 1 muestra la información de la interfaz de inicio de sesión obtenida a través de la herramienta Fiddler.

Figura 1 Información de la interfaz de inicio de sesión

2) Extracción y análisis de la información de la interfaz del artículo publicado.

La Figura 2 muestra la información de la interfaz del artículo publicado obtenida a través de la herramienta Fiddler.

Figura 2 Información de la interfaz de publicación del artículo

El análisis de la información de la interfaz de publicación es el siguiente.

De la información que se muestra en la Figura 2, podemos ver que la interfaz para publicar artículos utiliza el método de solicitud POST, el tipo de datos de la solicitud está en formato JSON y lleva información de cookies, lo que significa que la interfaz para publicar artículos se refiere al interfaz de inicio de sesión en la información solicitada. El conjunto de información variable (la variable establecida para el valor del campo admintoken).
Como se desprende del texto de la solicitud, el valor del título es "pagar", lo que significa que el título del artículo publicado es "pagar".
Del texto de la respuesta podemos ver que cuando el artículo se publica correctamente, el servidor genera un parámetro de identificación, que es el número de identificación del artículo, y la identificación del artículo publicado esta vez es 1. Pero cabe señalar que este número de identificación es dinámico, porque cada vez que se publica un nuevo artículo, el número de identificación generado es diferente. Si la interfaz descendente desea modificar o eliminar este artículo, debe indicar este número de identificación.
En el caso de prueba de la interfaz, ¿cómo hacer que la interfaz descendente haga referencia a la información de identificación de la interfaz ascendente? El valor de id debe extraerse y colocarse en una variable, y la interfaz posterior puede hacer referencia directamente a esta variable para obtener el valor de id.

3) Modificar la extracción de información de la interfaz del artículo.

La Figura 3 muestra la información sobre la modificación de la interfaz del artículo obtenida a través de la herramienta Fiddler.

Figura 3 Modificar la información de la interfaz del artículo.

El análisis de la información de la interfaz del artículo modificado es el siguiente.

De la información que se muestra en la Figura 3, podemos ver que la interfaz para modificar artículos utiliza el método de solicitud POST, el tipo de datos de la solicitud está en formato JSON y lleva información de cookies, lo que significa que la interfaz para modificar artículos se refiere al interfaz de inicio de sesión en la información solicitada. El conjunto de información variable (la variable establecida para el valor del campo admintoken).
Como se puede ver en el texto de la solicitud, el artículo con id 1 se modifica esta vez y el título del artículo se cambia de "Pago" a "Excelencia en la contribución". Sin embargo, dado que la identificación del artículo cambia dinámicamente, es necesario hacer referencia a la variable de la identificación establecida por la interfaz de publicación del artículo al modificar el artículo.
4) Extracción de información de la interfaz del artículo eliminado.

La Figura 4 muestra la información de la interfaz de eliminación de artículo obtenida a través de la herramienta Fiddler.

Figura 4 Eliminar la información de la interfaz del artículo.

El análisis de información de la interfaz de eliminación de artículo es el siguiente.

De la información que se muestra en la Figura 4, podemos ver que la interfaz para eliminar artículos utiliza el método de solicitud POST, el tipo de datos de la solicitud está en formato de formulario y lleva información de cookies, lo que significa que la interfaz para eliminar artículos se refiere al interfaz de inicio de sesión en la información solicitada. El conjunto de información variable (la variable establecida para el valor del campo admintoken).
Como se puede ver en el texto de la solicitud, el artículo con ID 1 se elimina esta vez, pero dado que la ID del artículo cambia dinámicamente, se debe hacer referencia a la variable establecida para la ID en la interfaz de publicación del artículo al eliminar el artículo. .
5) Extracción de información de la interfaz del artículo de consulta.

El contenido de esta consulta es "excelente capacidad de pago" y los artículos de consulta obtenidos a través de la herramienta Fiddler están conectados a

La información del puerto se muestra en la Figura 5.

Figura 5 Consultar la información de la interfaz del artículo.

El análisis de información de la interfaz del artículo de consulta es el siguiente.

De la información que se muestra en la Figura 5, podemos ver que la interfaz de eliminación de artículo utiliza el método de solicitud GET, por lo que el contenido a consultar se coloca directamente en la dirección de la interfaz en lugar de en el cuerpo de la solicitud. La interfaz del artículo de consulta también lleva información de cookies en el encabezado de la solicitud, lo que significa que la interfaz del artículo de consulta hace referencia a la información variable establecida por la interfaz de inicio de sesión (la variable establecida para el valor del campo token de administrador) en el encabezado de la solicitud.
Del texto de la respuesta podemos ver que el valor del campo de error es 0, lo que significa que la consulta comercial fue exitosa, y los valores de los campos total y de registros son 0, lo que significa que el artículo " Excelencia a través del trabajo duro" se ha eliminado por completo y no se ha encontrado ninguna consulta. Registro.
6) Resumen de asociación de interfaz

A través del análisis de la interfaz anterior, se pueden sacar las siguientes conclusiones.

La interfaz de publicación está asociada con la interfaz de inicio de sesión.
La interfaz de modificación del artículo está asociada tanto con la interfaz de inicio de sesión como con la interfaz de publicación del artículo.
La interfaz de eliminación de artículo está asociada tanto con la interfaz de inicio de sesión como con la interfaz de publicación de artículo.
La interfaz de consulta del artículo está asociada con la interfaz de inicio de sesión.

Finalmente me gustaría agradecer a todos los que han leído atentamente mi artículo, la reciprocidad siempre es necesaria, aunque no es algo muy valioso, puedes quitártelo si lo necesitas:

inserte la descripción de la imagen aquí

Subprograma de entrevista de prueba de software

¡El banco de preguntas de pruebas de software superado por millones de personas! ! ! ¡Quién es quién lo sabe! ! ! El miniprograma de cuestionarios más completo de toda la red, puedes usar tu teléfono móvil para hacer los cuestionarios, en el metro o en el autobús, ¡enróllalo!

Se cubren las siguientes secciones de preguntas de la entrevista:

1. Teoría básica de pruebas de software, 2. web, aplicaciones, pruebas de función de interfaz, 3. red, 4. base de datos, 5. linux

6. web, aplicación, automatización de interfaz, 7. pruebas de rendimiento, 8. conceptos básicos de programación, 9. preguntas de la entrevista de horas, 10. preguntas de prueba abiertas, 11. pruebas de seguridad, 12. conceptos básicos de informática

Estos materiales deberían ser el almacén de preparación más completo y completo para los amigos [de pruebas de software]. Este almacén también ha acompañado a decenas de miles de ingenieros de pruebas en el viaje más difícil. ¡Espero que pueda ayudarlo a usted también! 

Supongo que te gusta

Origin blog.csdn.net/qq_48811377/article/details/132380222
Recomendado
Clasificación