Cómo hacer la prueba de interfaz, lea este artículo en 5 minutos para averiguarlo a fondo

0 1. Estructura general del proyecto

02. ¿Qué es una interfaz?

Interfaz: un método de acceso unificado proporcionado por el programa del servidor al mundo exterior, que generalmente usa el protocolo HTTP para ejecutar diferentes lógicas comerciales a través de diferentes URL, diferentes tipos de solicitudes (GET, POST) y diferentes parámetros.

La mayoría de las operaciones comerciales del cliente deben llamar a la interfaz del servidor para obtener algunos datos o activar algún negocio, y luego el cliente realizará un procesamiento y una visualización diferentes de acuerdo con el contenido de los datos después de recibir los datos devueltos por la interfaz.

03. ¿Por qué hacer pruebas de interfaz?

A. En la empresa, el cliente y el servidor generalmente son desarrollados por diferentes equipos. Durante el proceso de desarrollo del proyecto, el progreso de desarrollo del cliente y el servidor es inconsistente. Por ejemplo, el desarrollo del servidor se completa primero. Interfaz de conducta pruebas para asegurarse de que la lógica del servidor y los datos devueltos sean correctos, y luego pruebe el cliente. O algunos departamentos de pruebas se especializan en probar el equipo de desarrollo del lado del servidor, por lo que su objeto de prueba es la interfaz.

B. Al probar ciertos servicios, no puede simplemente probar a través del front-end, como el registro de usuario. El front-end restringe que el nombre de usuario esté vacío, pero algunas personas pueden usar herramientas para omitir el front-end y llamar directamente al servidor. Si el servidor no hace nada relacionado, los juicios lógicos darán como resultado errores de datos. Incluyendo si cifrar la información clave durante la transmisión de datos de la interfaz. Por lo tanto, debe probarse por separado para la interfaz del servidor .

C. Después del desarrollo y las pruebas, primero puede ejecutar la prueba de interfaz del servidor a través de la herramienta para asegurarse de que se superen todos los casos de prueba de interfaz y juzgar rápidamente si la interfaz del servidor cumple con las expectativas. Luego pruébelo a través de la interfaz de usuario. De lo contrario, si hay errores en la interfaz, debe haber errores en la página de inicio.

0 4. Herramientas y procesos de prueba de interfaz

Las herramientas de prueba de interfaz HTTP comunes incluyen Jmeter, Postman, SoupUI, etc. Jmeter es ampliamente utilizado en las empresas.

Jmeter es una herramienta de prueba de interfaz gratuita y de código abierto , que puede probar la función y el rendimiento de la interfaz. La automatización de la interfaz también es posible.

Para el uso específico de Jmeter, consulte el documento "Jmeter Interface Tool Combat"

Proceso de prueba de interfaz:

Al igual que las pruebas web ordinarias, el análisis de requisitos, la escritura de casos de prueba, la ejecución de pruebas, el envío de errores, las pruebas de regresión y el envío de informes de prueba también se realizan primero.

0 5. El enfoque de las pruebas de interfaz

1. Entrada

La entrada se refiere principalmente a los parámetros de entrada de la interfaz. En nuestras pruebas habituales, primero consideraremos los parámetros de entrada normales y los parámetros de entrada anormales. Las condiciones anormales incluyen: excepciones de parámetros y excepciones de datos. El diseño de casos de uso se usa principalmente para equivalencia Particionamiento de clases y análisis de valores límite

  • entrada normal

    Los parámetros de entrada normales son fáciles de entender, es decir, de acuerdo con los estándares de parámetros de entrada del documento de diseño de la interfaz, ingrese los parámetros normales y la respuesta regresa normalmente de acuerdo con las condiciones acordadas del documento de diseño de la interfaz.

  • Excepción de parámetro

    Las excepciones de parámetros incluyen: parámetros vacíos, más o menos parámetros, parámetros incorrectos

  • excepción de datos

    Excepción de datos: error de tipo de datos, parámetro no nulo está vacío, la longitud no cumple con el diseño, datos fuera de rango, miembros ilegales, caracteres especiales o confidenciales, datos de parámetros anormales con relaciones relacionadas, etc.

2. Lógica empresarial

Al igual que las pruebas funcionales basadas en la interfaz de usuario, las pruebas de interfaz también deben comprender la lógica comercial detrás de la interfaz. Para la lógica de procesamiento del proceso comercial, podemos considerarlo desde diferentes dimensiones, como las restricciones de los parámetros de entrada, los objetos de operación de los eventos, y la transición de estado del negocio.

  • Análisis de restricciones

    ①  Restricciones numéricas: diccionarios, calificaciones, restricciones relacionadas con la industria, restricciones de cantidad, restricciones de puntuación, etc.

    ②Restricciones de estado  : válido|inválido, en línea|fuera de línea, en lista negra|enmascarado, etc.

    ③  Restricción de relación: existencia o inexistencia, vinculante o no vinculante, etc.

    ④Limitación  de permisos: administradores, usuarios comunes, etc.

  • análisis de objetos

    El análisis de objetos es principalmente para operar sobre objetos lícitos e ilegales, por ejemplo, si un usuario de tarjeta bancaria recarga la tarjeta, puede haber: el usuario A recarga con una tarjeta distinta al usuario A, el usuario A recarga con su propia tarjeta, y la tarjeta ha caducado; el usuario A usa su propia tarjeta para recargar, y la tarjeta está en la lista negra o se informa como perdida.

  • Análisis de Transiciones de Estado

    Por ejemplo, en el negocio de pagos, si el pago es exitoso primero, el reembolso se emitirá después de que se cancele el pedido. Si el pago no se realiza correctamente nuevamente, significa que el pago ha fallado. Controlable, ya sea que haya un estado anormal, cómo lidiar con negocios estatales vacíos, etc.

  • análisis de tiempos

    En algunas actividades complejas, una actividad se realiza mediante una serie de acciones en un orden específico. Estas acciones forman un flujo de acción, que debe ejecutarse en secuencia para esperar el resultado esperado. Luego, otras acciones de ramificación que ocurren durante la ejecución. proceso ¿Qué hará el programa?

3. Salida

Al considerar las excepciones, generalmente pensamos en situaciones normales y situaciones no válidas, pero es posible que no cubran todos los códigos de error, y los códigos de error devueltos por la definición de interfaz pueden ayudarnos a complementar esta parte de los casos de uso, como excepciones de red, reglas no válidas , parámetros no válidos, ID de empresa no válida, tarea no válida, excepción del servidor, etc., agregue el valor del código de error para diseñar más casos de uso

Este tipo de caso de uso de diseño basado en la salida puede averiguar si los resultados de la salida de front-end y back-end son normales, si el aviso es amigable, si hay información confidencial en el aviso, etc.

4. Operación de la base de datos

  • Si el almacenamiento de datos comerciales es normal, si hay almacenamiento de datos duplicados y si hay caracteres ilegibles

  • Si la actualización de datos es normal, especialmente el campo de la hora, si la hora está en formato de 24 horas

  • Si cada campo de la tabla cumple con las expectativas

5. Seguridad

Si la información confidencial está encriptada (como nombre de usuario, número de cuenta bancaria, contraseña, monto de la transferencia)

6. Rendimiento

  • ¿Cuál es el número máximo de simultaneidad que admite la interfaz?

  • Cuántas veces la interfaz puede manejar transacciones por segundo (TPS)

  • El tiempo de respuesta promedio (RT) de la interfaz

  • Consumo de recursos del servidor por interfaces (CPU, memoria, red, disco)

7. Compatibilidad

Las pruebas de interfaz no necesitan considerar la compatibilidad del cliente, principalmente la compatibilidad de datos . Por ejemplo, si los datos históricos de la interfaz anterior son compatibles y si los datos antiguos se pueden procesar normalmente con la nueva interfaz.

8. Otros

  • Idempotencia: significa que los resultados de una o varias solicitudes iniciadas por el usuario para la misma operación son consistentes y no habrá efectos secundarios debido a múltiples clics.

Tome el ejemplo más simple:

Eso es pago . El usuario paga después de comprar el producto, y la deducción del pago es exitosa, pero cuando se devuelve el resultado, la red es anormal. En este momento, el dinero se ha deducido. Cuando el usuario hace clic en el botón nuevamente, el el sistema debe negarse a pagar en este momento y mostrar "No se puede pagar repetidamente". Es equivalente a que el segundo pago no tendrá ningún efecto. Al realizar pruebas de interfaz, para algunas interfaces con requisitos de idempotencia, es necesario probar la idempotencia.

Por lo general, Jmeter se puede usar para llamar continuamente a la interfaz dos veces para realizar operaciones como el pago y el envío para probar la idempotencia.

FIN arreglo de estudio!

Finalmente, me gustaría agradecer a todos los que han leído mi artículo detenidamente. Al ver el crecimiento y la atención de los fanáticos en todo momento, siempre existe la necesidad de reciprocidad. Aunque no es algo muy valioso, si puede usarlo, usted puede tomarlo directamente.

Estos materiales deben ser el almacén de preparación más amplio y completo para los amigos que hacen [pruebas de software]. ¡Este almacén también me ha acompañado a través del viaje más difícil, y espero que también pueda ayudarlo a usted!

Finalmente: puede obtener un documento de recopilación de entrevistas con un ingeniero de pruebas de software de 216 páginas de forma gratuita en mi cuenta pública de VX: [Programador Xiaohao] . ¡Y los tutoriales de aprendizaje en video correspondientes son gratuitos para compartir! , que incluye conocimientos básicos, conceptos básicos de Linux, Shell, principios de programas de Internet, base de datos Mysql, temas de herramientas de captura de paquetes, herramientas de prueba de interfaz, programación avanzada de pruebas-Python, pruebas automatizadas web, pruebas automatizadas de aplicaciones, pruebas automatizadas de interfaz, pruebas de integración continua avanzada, marco de prueba desarrollo marco de prueba, pruebas de rendimiento, pruebas de seguridad, etc. También puedes interactuar conmigo

Supongo que te gusta

Origin blog.csdn.net/myh919/article/details/131424958
Recomendado
Clasificación