¿Cómo escribir casos de uso de interfaz? Método de diseño de casos de prueba de interfaz (explicación detallada)


Prefacio

1. Errores y problemas que se encuentran comúnmente en las interfaces.

Se pasan parámetros no conformes, lo que provoca que el programa falle;
el tipo de datos se desborda, lo que resulta en lectura y escritura de datos inconsistentes;
debido a que los permisos del objeto no se verifican, se puede acceder a la información confidencial de otros usuarios;
el procesamiento de estado inadecuado conduce a confusión lógica Verificación lógica Si
la prueba no es perfecta, se pueden aprovechar las lagunas para obtener beneficios ilegales;

2. Diseño de casos de prueba

Entrada-lógica de procesamiento de interfaz-salida:
una interfaz generalmente tiene entrada y salida, a veces no hay salida,
consideraciones de diseño de casos de uso, entrada, salida

Para la entrada, puede diseñar según tipos de parámetros;
para el procesamiento, puede diseñar casos de uso según la lógica;
para la salida, puede analizar y diseñar en función de los resultados;

Detalles:
Diseñado para entrada:
Tipo numérico:
Clase de equivalencia: Dentro del rango de valores, fuera del rango de valores
Método de límite: Límite del rango de valores: Límite máximo, mínimo, Límite mínimo -1, máximo +1, etc.
Valores especiales: 0, negativo Método de recorrido de valores, etc
.: recorre todos los valores en el rango de valores

Por ejemplo: el rango de un valor de entrada es int 1-12, se deben considerar los valores dentro del rango; los valores límite 0,1,12,13; el valor especial del tipo -1 , 0; los valores límite mínimo y máximo de int también deben considerarse Considere: si 1-12 tiene un significado específico, debe atravesar todos los valores

Riesgos: valores especiales, manejo inadecuado de valores límite, salida del programa, desbordamiento de datos, devolución de mensaje de error, etc.
Int: Límite del tipo de datos: -2147483648, 2147483648. (Entero.MAX_VALUE)

Tipo de cadena:
Longitud de cadena:
Método de equivalencia: Dentro del rango de valores, fuera del rango de valores
Método de límite: Especifica el límite del rango, límite de tipo
Valor especial: 0, es decir, el carácter vacío

Contenido de cadena:
Tipos específicos: inglés, chino, mayúsculas y minúsculas, etc.
Caracteres especiales: >, <*!@#$%, etc.
Caracteres sensibles: "flg" "TMD"", etc.

Por ejemplo: la longitud de la cadena de función de la interfaz es de 3 dígitos y la longitud de la prueba es: 3 dígitos, más de 3, menos de 3; la longitud
máxima de la cadena; carácter nulo especial; el contenido de la cadena es numérico, no -numéricos, etc., caracteres especiales, si es necesario filtrar los caracteres confidenciales;

Riesgos: cuando se pasan otros tipos, caracteres superlargos, palabras confidenciales, etc., si el programa sale de manera anormal, si se muestra, hay un problema de almacenamiento y las palabras confidenciales se procesan especialmente.

Tipo de matriz o lista vinculada:
Número de miembros:
Método de equivalencia: Dentro del rango de valores, fuera del rango de valores
Método de límite: Especifica el límite del rango, valor del límite numérico
Valor especial: 0, etc.

Contenido del miembro:
Clase de equivalencia: miembros legales e ilegales
Método de repetición: miembros repetidos
Ejemplo: la longitud de la matriz aceptada por la interfaz es generalmente 5, con valores dentro de 1-5 y 6
valores límite fuera del rango. máximo permitido por la solicitud, valor mínimo; valor especial, 0; el contenido es legal o ilegal; si se permite contenido duplicado.
Riesgo: 0 significa si se debe salir de forma anormal, si se permite contenido duplicado


Análisis de restricciones para diseño lógico :
restricciones numéricas: restricciones de puntuación, restricciones de monedas de oro, restricciones de nivel, etc. (solo se pueden ejecutar cuando se cumplen las condiciones)
restricciones de estado: es necesario iniciar sesión primero, etc. (sincronización de información, etc.)
restricciones de relación: relaciones vinculadas, relaciones de amistad, etc.
Restricciones de permisos: Administradores, etc.
Riesgos: Juicio insuficiente de las restricciones, los usuarios pueden obtener ganancias a través de medios especiales, etc.

Análisis de objetos de operación:
Las operaciones generalmente están dirigidas a objetos. Las operaciones se realizan en objetos legales e ilegales. ¿Qué pasará con el procesamiento en segundo plano?
Riesgo: Los usuarios pueden operar sin permiso.

Análisis de transición de estado:
la lógica bajo prueba se abstrae en una máquina de estados y cada estado se cambia de acuerdo con la lógica de cada función. Si este orden se interrumpe y se realizan operaciones de salto, habrá problemas lógicos y riesgos de verificación de corrección:
especial Se pueden utilizar medios para lograr lo que originalmente es imposible: estatus, obteniendo así ganancias, etc.

Análisis de tiempo:
en algunas actividades complejas, una actividad consta de una serie de acciones realizadas en un orden específico. Sólo cuando las acciones se completan en secuencia se pueden obtener los resultados esperados. En un proceso normal, las acciones se ejecutan en secuencia sin interrupciones, sin embargo, durante las pruebas de interfaz, es necesario considerar si habrá problemas si no se ejecutan en secuencia.

Por ejemplo: el cliente activa la sincronización de datos del cliente y los usuarios no pueden intervenir durante este período. Lo que vemos durante las pruebas funcionales es si se puede sincronizar normalmente, si lo desmantelamos más, el proceso de sincronización es una serie de acciones.

Por ejemplo: obtener información del usuario, iniciar una solicitud, devolver información de inicio de sesión en segundo plano, cargar datos locales localmente, verificar datos en segundo plano, generar diferencias y el nuevo número correspondiente, devolver datos y números incrementales, informar conflictos localmente, manejar conflictos en el fondo y devolver información sobre la finalización de la sincronización del cliente.

La interfaz debe llamarse en secuencia para completarse sincrónicamente, pero al probar la interfaz, puede probar la ejecución de interrumpir esta secuencia, si hay excepciones, etc.
Riesgo: después de una ejecución no secuencial, pueden ocurrir anomalías en los datos y puede haber otros problemas en el programa.

Diseño para salida:
Para resultados de salida: Puede que solo haya un resultado correcto, pero hay muchas situaciones incorrectas. El diseño de casos de uso se puede llevar a cabo en función de la lista o el tipo de resultados devueltos.

Riesgos:
el procesamiento de errores insuficiente en el front-end conduce a excepciones en el front-end;
manejo inadecuado de mensajes de error, los usuarios ven un código de programa oscuro;
mensajes de error inadecuados, los usuarios no saben dónde está el problema y cómo resolverlo.

Tiempo de espera de la interfaz:
la interfaz regresa normalmente, ¿qué pasa si no puede recibir la devolución? El procesamiento del tiempo de espera de la interfaz también es una parte que debe considerarse: si no se maneja adecuadamente, todo el proceso se bloqueará y el valor de retorno se recibirá después del tiempo de espera, lo que generará confusión lógica.

Otras pruebas totales:
Prueba de interfaz abandonada:
es posible que las interfaces abandonadas no se eliminen a tiempo y las interfaces abandonadas relacionadas deben verificarse para evitar problemas.

Análisis de racionalidad del diseño de la interfaz:
análisis de los siguientes aspectos:
si los campos de la interfaz son redundantes;
si la interfaz es redundante;
si la interfaz devuelve la información esperada por la persona que llama; si
la definición de la interfaz puede cumplir con todos los requisitos de llamada;
si la definición de la interfaz es conveniente llamar;

Pruebas de seguridad:
para los evaluadores de seguridad no profesionales que prestan más atención a la seguridad empresarial, se pueden hacer las siguientes consideraciones:
si la interfaz utiliza el protocolo https; si
los datos de solicitud de la interfaz están cifrados;
si la información clave se guarda en la base de datos se ha procesado Procesamiento de cifrado,
si existen restricciones en las solicitudes de algunas herramientas de uso común,
si la interfaz restringe el número de accesos a la misma IP;

Proyectos de prueba:
envío repetido, pruebas concurrentes, pruebas distribuidas (pruebas de equilibrio de carga), pruebas de anomalías ambientales, pruebas de grandes volúmenes de datos

Enfoque de la prueba de rendimiento:
tiempo de respuesta, rendimiento, número de concurrencias, rendimiento del servidor: (CPU, contenido, IO, red)

El siguiente es el diagrama del sistema de arquitectura de conocimiento de aprendizaje de ingenieros de pruebas de software más completo que compilé en 2023.

1. Programación en Python desde el nivel básico hasta el dominio

Por favor agregue la descripción de la imagen.

2. Implementación práctica de proyectos de automatización de interfaces.

Por favor agregue la descripción de la imagen.

3. Combate real del proyecto de automatización web.

Por favor agregue la descripción de la imagen.

4. Implementación práctica del proyecto de automatización de aplicaciones.

Por favor agregue la descripción de la imagen.

5. Currículums de los fabricantes de primer nivel.

Por favor agregue la descripción de la imagen.

6. Probar y desarrollar el sistema DevOps

Por favor agregue la descripción de la imagen.

7. Herramientas de prueba automatizadas de uso común

Por favor agregue la descripción de la imagen.

8. Prueba de rendimiento de JMeter

Por favor agregue la descripción de la imagen.

9. Resumen (pequeña sorpresa al final)

Esfuércese con perseverancia, acepte los desafíos, avance con valentía y aventúrese con valentía hacia el futuro. No tengas miedo de las dificultades ni de los fracasos, usa la sabiduría y el coraje para superar los obstáculos y crea brillantez en el camino de la lucha. ¡Cree en tu potencial, persigue tus sueños y logra un viaje de vida extraordinario!

En cada amanecer, el amanecer de la lucha ilumina el camino a seguir y, con valentía, zarpamos hacia nuestros sueños. No tengas miedo a los desafíos, ve más allá de tus límites y deja que el trabajo duro y el sudor allanen el camino hacia el éxito. Cree en tu perseverancia y sigue luchando, ¡y tus propias flores brillantes eventualmente florecerán!

Avanza con valentía y persiste en el trabajo duro, y el poder de la lucha abrirá infinitas posibilidades. No importa cuál sea el punto de partida, siempre que tengas un sueño y trabajes duro para seguir adelante, podrás superar el viento y la lluvia y dar la bienvenida a la gloria.

Supongo que te gusta

Origin blog.csdn.net/m0_60054525/article/details/131940213
Recomendado
Clasificación