Preguntas de la entrevista sobre pruebas de software: pruebas de rendimiento de la interfaz WEB |
1. Lista de códigos http, preguntas frecuentes
404: Recurso no encontrado
500: Error interno del servidor, no se puede completar la solicitud.
501: El servidor no admite la función solicitada y no puede completar la solicitud.
502: El servidor que actúa como puerta de enlace o proxy recibió una solicitud no válida del servidor remoto.
301: Movido permanentemente. El recurso solicitado se ha movido permanentemente al nuevo URI. La información devuelta incluirá el nuevo URI. El navegador será dirigido automáticamente al nuevo URI. Cualquier solicitud nueva en el futuro deberá utilizar el nuevo URI.
302: Mudanza temporal. Similar al 301. Sin embargo, el recurso sólo se mueve temporalmente y el cliente debe seguir utilizando el URI original.
200: Éxito.
2. Modelo de red TCP/IP de cuatro capas.
Capa de enlace, capa de red, capa de transporte y capa de aplicación.
3. ¿Cuál es la diferencia entre TCP/UDP?
TCP: protocolo de transmisión confiable, que requiere una conexión de protocolo de enlace de tres vías y tiene un mecanismo de retransmisión de confirmación. Se caracteriza por su confiabilidad, precisión y control de congestión. La desventaja es que es relativamente lento y tiene. un volumen de transmisión relativamente pequeño es adecuado para actualizaciones y descargas; en pocas palabras: TCP es un transporte confiable.
UDP: protocolo de transmisión no confiable, un protocolo no orientado a la conexión. La ventaja es un gran volumen de transmisión y una velocidad rápida. La desventaja es que se pierde y no tiene control de congestión. , vídeo, etc. En pocas palabras: UDP es un transporte poco confiable.
4. ¿Cuál es el orden en que se ejecuta html css js?
Cuando se carga la interfaz, primero se carga html, luego se carga css y finalmente se carga js
5. ¿Cuál es la diferencia entre sesión y cookie
?1. La sesión se almacena en el lado del servidor Se utiliza para verificar la identidad del cliente
2. La cookie se almacena en el cliente Cada vez que se envía una solicitud del cliente al servidor, la cookie. se lleva al servidor para verificar la identidad del cliente
1. ¿Cómo utilizar JMeter para probar la interfaz?
Si utiliza JMeter para probar la interfaz:
1) Comprenda los requisitos antes de realizar la prueba y organice el negocio de acuerdo con las especificaciones de la interfaz
2) Siguiente; , Diseñe casos de uso y analice Para los parámetros de entrada y salida de la interfaz, distinga claramente las entradas válidas y no válidas, y diseñe casos de uso (principio: use el número mínimo de casos de uso para cubrir todas las entradas válidas y diseñe un caso de prueba para cada entrada no válida si hay códigos de error que no están cubiertos, pero también diseñe un caso de uso para cada código de error que no esté cubierto
3) Prepare datos de prueba, como: número de cuenta, contraseña, clave y otra información requerida para la prueba;
4) Abra JMeter, cree un grupo de subprocesos y complete la dirección de interfaz correspondiente y el método de solicitud según el tipo de interfaz; 5) Configuración parametrizada, agregue el componente de configuración Configuración del conjunto de datos CSV y defina variables y prepare los datos en formato CSV. Las referencias de variables están en el formato ${variable name}; determinar la exactitud de los resultados de la prueba. Las más utilizadas son las afirmaciones de respuesta
7) Agregar un oyente, como ver el árbol de resultados, para monitorear los resultados de la prueba; Ejecute el caso de prueba
9) Vea los resultados del escucha para juzgar el caso de uso si la ejecución fue exitosa o fallida, analice las razones del fracaso de los casos de uso fallidos
10) Para los problemas encontrados en la prueba, entregar al desarrollo un conocimiento de embarque hasta que finalmente se resuelva el problema.
11) Finalmente genere el informe de prueba.
2. ¿Cómo utilizar Postman para probar la interfaz?
Si usa Postman para probar la interfaz:
Los puntos 1, 2 y 3 son los mismos, pero la herramienta es más sencilla de usar que JMeter. Los pasos principales de la herramienta. son agregar la solicitud correspondiente y completar la URL del host y los parámetros de entrada, agregar el conjunto de pruebas, ejecutar el conjunto de pruebas, analizar los resultados y generar el informe.
3. ¿Cómo utilizar el resultado de la solicitud anterior como parámetro de la siguiente solicitud en JMeter?
Utilice un extractor de expresiones regulares para extraer la información de la respuesta de la solicitud anterior, guarde un nombre de referencia como abc y utilice el formato ${abc} para hacer referencia al resultado extraído en los parámetros de la siguiente solicitud.
Formato de expresión regular de uso común: (. ?), donde . significa coincidir con cualquier cadena, significa coincidir solo una vez, ? Significa detenerse cuando se encuentra una coincidencia.
Generalmente, probamos el rendimiento en los últimos dos o tres días después de completar nuestras pruebas funcionales.
1. Primero, analice los requisitos y calcule el número de concurrencia, TPS, tiempo de respuesta e indicadores como CPU, memoria, disco duro y IO de red.
2. Desarrollar un plan de prueba, que incluya principalmente el entorno, el plan y escenarios de prueba específicos (como confiabilidad, concurrencia, carga, pruebas de estrés, etc.)
3. Grabar con Badboy según el escenario Script, exportado como un script compatible con la herramienta JMeter.
4. Utilice la herramienta JMeter para abrir el script, depurarlo, agregar algunas afirmaciones, oyentes, parametrización, etc.
5. A continuación, realice una prueba de rendimiento y luego recopile principalmente escuchas y CPU del servidor, memoria, disco duro y E/S de red para analizar si se cumplen los requisitos. Si es así, genere un informe de prueba de rendimiento.
6. Si no se pueden cumplir los indicadores, retroalimentar el desarrollo para su optimización. Después del ajuste, continúe con las pruebas hasta que se cumplan los requisitos y finalmente se genere el informe de prueba.
1. ¿Cómo definir una función en Python?
Puedes definir una función con las funciones que desees, las siguientes son reglas simples:
1) El bloque de código de función comienza con la palabra clave def, seguida del nombre del identificador de la función y paréntesis().
2) Cualquier parámetro entrante y variable independiente debe colocarse entre paréntesis. Los parámetros se pueden definir entre paréntesis.
3) La primera línea de la declaración de función puede usar opcionalmente una cadena de documentación, que se usa para almacenar descripciones de funciones.
4) El contenido de la función comienza con dos puntos y tiene sangría
5) return[expresión] finaliza la función y opcionalmente devuelve un valor a la persona que llama.
Devolver sin una expresión equivale a devolver Ninguno
2 segmentos de Python
3. ¿Qué bibliotecas/módulos se han utilizado en Python?
webdriver: elementos de posicionamiento y operación
tiempo: establecer el tiempo de espera
ActionChains: cadena de acciones, completar operaciones relacionadas con el mouse
Teclas : Operaciones relacionadas con el teclado
WebDriverWait: Establecer espera explícita
Expect_Conditions: Establecer escenario de espera explícito para un solo elemento
PIL: Captura de pantalla
Seleccione: Operación del cuadro de selección desplegable
unittest python: marco de prueba unitario integrado
HTMLTestRunner: ejecutar script y generar informe
ddt: implementar datos -Pruebas impulsadas y comportamiento y datos separados
4. ¿Alguna vez has realizado pruebas automatizadas?
En mi último trabajo, la empresa también comenzó a planificar la automatización web en la segunda mitad del año pasado. Usó Python como lenguaje de desarrollo y utilizó Selenium WebDriver para ubicar y operar los elementos de la página. prueba unitaria. Soy el principal responsable de escribir guiones de prueba.
Supongamos que hay 5 personas en un equipo de pruebas: 1 senior (gerente de pruebas) 2~3 intermedio (automatizado y manual) 1 junior (manual)
5. Qué herramientas se utilizan ? Pruebas automatizadas
La herramienta utilizada es Selenium (herramienta de automatización web)
6. ¿Qué lenguaje de programación se utiliza
Python se utiliza
p>7. ¿Qué versión de Selenium estás usando? ¿Qué versión de Python estás usando?Se utiliza Selenium 3.11.0 y Python2.7.10.
8. ¿Cómo funciona Selenium?
1) Posicionar el elemento html
2) Simular hacer clic, ingresar, seleccionar y otras operaciones en el elemento posicionado en el primer paso En una oración: posicionar el elemento y operar el. elemento.
9. ¿Cuáles son los métodos de posicionamiento de elementos?
Puntos clave: 8 métodos de posicionamiento
1) Posicionamiento según el valor del atributo del elemento, como id, nombre, clase, nombre de etiqueta, texto del enlace y parte del enlace text;
2) Posición según selector CSS;
3) Posición según XPath
10. ¿Cómo posicionar elementos en subpáginas?
Primero cambie al marco y luego coloque la función switch_to_frame para cambiar a la subpágina de acuerdo con la identificación o el nombre de la subpágina. Si desea colocar los elementos de la página principal nuevamente después del posicionamiento, use. la función switch_to_default_content para regresar primero a la página de inicio.
11. ¿Cómo localizar la ventana emergente de alerta? O pregunte esto: ¿Cómo lidiar con las ventanas nativas JS?
Puntos clave: Implica principalmente operaciones como hacer clic en el botón de confirmación de la ventana emergente, cerrar la ventana emergente a la fuerza y obtener el texto en la ventana emergente.
1) Haga clic en el botón Aceptar de la ventana emergente y utilice la siguiente función:
driver.switch_to_alert().accept()
2) Para forzar el cierre, haga clic en la esquina superior derecha. Para cruzar las esquinas, use la siguiente función:
driver.switch_to_alert().dismiss()
3) Para obtener el texto en la ventana emergente ventana superior, utilice la siguiente función:
driver.switch_to_alert().text
12. ¿Cómo ejecutar casos de prueba automatizados y generar informes de prueba?
Tomando unittest como ejemplo, mi enfoque habitual es cargar el caso de uso en el conjunto de pruebas, convertirlo en un script, ejecutar el script en la ventana de comandos y usar el módulo HTML TestRunner de terceros. para generar el informe.
13. ¿Cómo localizar/operar el código de verificación en la imagen?
Utilice el motor Tesseract OCR para procesar el código de verificación en la imagen. Pasos:
(1) Tome una captura de pantalla de toda la pantalla y guárdela en formato png. >
(2) Localice las coordenadas de posición de la imagen del código de verificación en la imagen capturada;
(3) Realice una captura de pantalla del código de verificación de acuerdo con las coordenadas; Extraiga el código de verificación de la imagen e introdúzcalo en el cuadro de entrada.