Entrevista al ingeniero de pruebas, resumen de las preguntas de prueba de la interfaz
2. ¿Qué son las pruebas de interfaz?
3. ¿Cuáles son los elementos que componen la interfaz?
4. ¿Qué hace el paquete de solicitudes de Python?
5. ¿Cómo utilizar el paquete de solicitudes de Python?
6. ¿Por qué necesitamos realizar pruebas de interfaz?
7. ¿Por qué escribir casos de prueba de interfaz?
8. ¿Cuáles son las principales consideraciones en el diseño de casos de prueba de interfaz?
9. ¿Qué incluye el caso de prueba de interfaz?
10. ¿Cómo diseñar casos de uso para pruebas de interfaz?
11. ¿Diseño de casos de uso de interfaz común?
12. ¿Qué contiene el informe de prueba de la interfaz?
13. ¿Qué indicadores incluye el alcance de la prueba?
14. ¿Qué herramientas de prueba se utilizan para las pruebas de interfaz?
15. ¿Qué herramientas de captura de paquetes se utilizan?
16. ¿Por qué necesitamos realizar pruebas de captura de paquetes?
17. ¿Cuáles son las capas del modelo de referencia TCP/IP?
18. ¿Cuáles son los números de puerto de los protocolos comúnmente utilizados?
19. ¿Cuáles son los códigos de estado comunes?
20. ¿Cuál es el proceso de prueba de interfaz de su empresa?
21. Explique en detalle cómo cooperan las pruebas de interfaz y las pruebas de UI en las actividades de prueba.
22. ¿Cuáles son las precauciones para las pruebas de interfaz?
23. Durante la ejecución de la prueba de interfaz, ¿comparará bases de datos?
24. ¿Cuál es la diferencia entre cookie, sesión y token?
25. ¿Cuánto sabes sobre el protocolo HTTP?
26. ¿Qué entiendes por transmisión de texto insegura?
(4) 25/tcp SMTP Protocolo simple de transferencia de correo (correo electrónico)
(5) 69/udp TFTP Protocolo trivial de transferencia de archivos (TFTP)
(6) 80/tcp HTTP Protocolo de transferencia de hipertexto (WWW)
(7) 110/tcp POP3 Protocolo de oficina postal (correo electrónico)
(8) 443/tcp HTTPS para transmisión segura de páginas web
(9) 3389/tcp Acceso remoto 5631/tcp
(10) 5632/udp número de puerto pcanywhere
(11) 1433 Número de puerto de servicio SqlServer
(12) 1521 Número de puerto de servicio Oracle
(13) 3306/tcp Protocolo de oficina postal POP3 (electrónico (13) 3306 Número de puerto de servicio Mysql
(14) 8080 Número de puerto de servicio predeterminado de Tomcat
19. ¿Cuáles son los códigos de estado comunes?
(1) Alerta de información 1XX, utilizada para especificar ciertas respuestas en el client.operación.
(2) Éxito 2XX, utilizado para indicar solicitud exitosa.
(3) Redirección 3XX, utilizada para mover archivos, generalmente incluida en la información del encabezado de ubicación para generar. Nueva información de dirección
(4) Error de cliente 4XX, que indica un error de cliente
(5) Error de servidor 5XX, que indica un error de servidor. ¿El proceso de prueba de la interfaz de la empresa?
(1) Comience formulando el documento de la interfaz y comprenda el negocio de la interfaz, incluida la dirección de la interfaz, el método de solicitud, los parámetros de entrada, los parámetros de salida, el formato de devolución, etc.
(2) Utilice Jmeter para realizar pruebas de interfaz, crear un grupo de subprocesos, luego crear un valor predeterminado de solicitud http y luego crear una gran cantidad de nuevas solicitudes http. Una solicitud es un caso de uso, ingrese el. ruta de interfaz correspondiente, acceso a métodos, parámetros, etc., crear aserciones y ver el árbol de resultados.
(3) Finalmente, llame y ejecute el caso de prueba y escriba el informe de prueba.
(4) Muchos problemas encontrados al realizar pruebas de interfaz se resolvieron de forma independiente, como valores de retorno confusos (modifique el archivo de configuración de Jmeter a UTF-8).
21. Explique en detalle cómo cooperan las pruebas de interfaz y las pruebas de UI en las actividades de prueba.
Las pruebas de interfaz y las pruebas de UI son en realidad partes superpuestas. Las pruebas de UI consisten en llamar a la interfaz a través de la interfaz escrita en el front-end, mientras que las pruebas de interfaz consisten en ajustar la interfaz directamente. Por lo tanto, aparte de la lógica del procesamiento front-end y la corrección de las llamadas, en teoría las pruebas de interfaz pueden cubrir todas las pruebas de UI. Pero en la operación real, si solo cubre todos los flujos comerciales en la capa de interfaz y solo prueba la lógica de front-end en la capa de UI, el resultado final puede ser que se ignoren muchos puntos funcionales originales, lo que resultará en pruebas de UI insuficientes. Por lo tanto, debe haber suficiente división del trabajo y tiempo del personal para probarlo, de modo que la interfaz cubra completamente el flujo de negocios; de lo contrario, no lo intente fácilmente.
22. ¿Cuáles son las precauciones para las pruebas de interfaz?
(1) Cambie los parámetros de la solicitud para ver si la respuesta es consistente con el documento de la interfaz.
(2) Compruebe si hay información confidencial (como información de cuenta personal, información de fondos) en los parámetros.
(3) Compruebe si los parámetros clave están cifrados (información de contraseña).
(4) Todas las interfaces de páginas de lista deben considerar el valor de clasificación.
(5) Si la dirección de la imagen devuelta por la interfaz se puede abrir y si el tamaño de la imagen cumple con los requisitos.
(6) La interfaz prueba el número de página y el número de página en busca de valores anormales al pasar las páginas.
(7) Cuando los parámetros de salida están vinculados, es necesario verificar si los resultados reales devueltos por los dos parámetros cumplen con los requisitos y verificar el valor predeterminado, el tipo de excepción y el valor no vacío de cada parámetro de entrada de la interfaz.
(8) Cuando el parámetro de entrada admite múltiples valores, debe considerar si la interfaz informará un error si se pasan más valores.
23. ¿Cómo se compara la ejecución de pruebas de interfaz con la base de datos?
Definitivamente se requiere comparación, porque los valores de datos devueltos por la interfaz provienen de la base de datos, y la operación de los datos por la interfaz también requiere una inspección profunda de la base de datos.
24. ¿Cuál es la diferencia entre cookie, sesión y token?
Los datos de las cookies se almacenan en el navegador del cliente, los datos de la sesión se colocan en el servidor y el token es el código de verificación para la prueba de la interfaz. Por lo general, obtiene el token después de iniciar sesión y luego debe hacerlo. tráigalo cada vez que solicite los parámetros del token de interfaz.
Las cookies no son seguras. Otros pueden analizar las cookies locales y realizar suplantación de cookies. Por razones de seguridad, debes utilizar sesiones. La información importante, como la información de inicio de sesión, se puede almacenar en la sesión y otra información se puede almacenar en las cookies.
25. ¿Cuánto sabes sobre el protocolo HTTP?
El puerto 80 del Protocolo de transferencia de hipertexto consta de dos partes: solicitud y respuesta.
Una solicitud consta de un encabezado de solicitud, una línea de solicitud y un cuerpo de solicitud; una respuesta consta de un encabezado de respuesta, una línea de respuesta y un cuerpo de respuesta.
Por seguridad, utilice https.
26. ¿Cuánto sabes sobre solicitudes http y solicitudes de servicios de red?
(1) Interfaz http api: en el protocolo http, los métodos de llamada se distinguen por rutas. Los mensajes de solicitud tienen la forma de valores clave, generalmente son cadenas json, con métodos como get y post. Estos son los dos métodos de solicitud más utilizados.
Puede utilizar herramientas como cartero, RESTClient, jmeter, loadrunner, etc.
(2) Interfaz de servicio web: el protocolo SOAP se transmite a través de http. El mensaje de solicitud y el mensaje de devolución están en formato xml y se llaman y prueban a través de herramientas. Las herramientas que se pueden utilizar incluyen SoapUI, jmeter, loadrunner, etc.
27. ¿Cuál es el significado de asociación en las pruebas de interfaz? ¿Cómo configurar asociaciones usando Postman?
La asociación consiste en interceptar parte del valor de retorno de la interfaz anterior y utilizarlo como parámetro de la siguiente interfaz, para que las interfaces puedan ejecutarse en serie.
Los pasos para configurar la asociación en Postman son los siguientes:
(1) Extraer la información requerida para la siguiente interfaz de la interfaz anterior, que se puede extraer mediante expresiones regulares. o mediante captura json.
(2) Utilice el código que establece la variable global para guardar el valor extraído en la variable global.
(3) En la siguiente interfaz, utilice (variable global) para reemplazar el valor estático que desea reemplazar.
28. ¿En cuántas capas se divide generalmente el marco de pruebas de automatización de interfaces?
El marco de pruebas automatizadas generalmente se divide en 5 capas (capa de configuración, capa de script, capa de datos, capa de informe de prueba, capa de controlador)
La planificación de ingeniería del proyecto de interfaz se puede dividir aproximadamente en varias categorías: la primera es la clase de resultados de la prueba, como test_rusult, que almacena algunos archivos de registro, informes de prueba, etc. Luego está el caso de prueba testcase, que almacena casos de prueba en módulos. La siguiente es la clase de método de dios público, como público o herramientas, que almacena algunos métodos, como leer datos de Excel, enviar solicitudes http, recopilar registros, enviar correos electrónicos, operar bases de datos, etc. Luego está la clase de archivo de configuración, como config, que contiene algunos archivos de configuración que especifican los casos de uso que se ejecutarán, así como los archivos de configuración para conectarse a la base de datos. Finalmente, está el método de ejecución, que se utiliza para ejecutar todos los casos de uso.
29. ¿Cómo separar datos y código en el marco de prueba?
Primero: use Excel para escribir tablas. Este método, que lee principalmente datos de Excel, es algo problemático. Las bibliotecas de terceros más utilizadas para leer Excel incluyen openpyxl, xlrd, etc. Por supuesto, la mejor manera de leer datos de Excel es usar openpyxl, xlrd, etc. Por supuesto, la mejor manera de leer datos de Excel es usar el módulo pandas para el análisis de datos, por lo que no es necesario escribir tantos bucles for.
El segundo método consiste en almacenar los datos en un archivo yaml, escribir un archivo yaml para el módulo o función y luego escribir un método **** público para leer el archivo yaml. Los archivos en formato yaml son relativamente simples.
La tercera forma es almacenarlo en la base de datos.
La cuarta forma es almacenar los datos en un archivo json.
La cuarta forma es almacenar los datos en un archivo json.