Red de conocimiento del abogados - Ley de patentes - Proceso de automatización web

Proceso de automatización web

Proceso de automatización web

1. Comprender los requisitos y cuál es el negocio principal del sistema

2. Escribir casos de prueba: nombre del caso de uso, condiciones previas. datos de prueba, pasos de prueba, resultados esperados

3. Construcción inicial de código automatizado: todo el posicionamiento de elementos, operaciones de elementos y casos de prueba están escritos en un módulo

Pregunta:

1. La jerarquía es confusa una vez que se ajustan los elementos de la página, es necesario encontrar los módulos de prueba, las clases de prueba y las funciones de casos de prueba correspondientes uno por uno, lo cual no es conveniente para el mantenimiento posterior.

2. No es conveniente reutilizar el código

4. Introduzca el modo PO y realice un diseño en capas: realice la separación de casos de prueba y objetos de página

Beneficios:

1. Capas claras, independientes entre sí, fáciles de mantener

p>

2 El objeto de la página se puede llamar varias veces, lo que mejora la reutilización del código

5. Presentación del marco de prueba unitaria unittest

6 Optimización del diseño en capas

p>

Extraiga los atributos y métodos públicos de cada página y encapsúlelos en una clase BasePage. En el módulo BasePage, cada página solo necesita heredarla para obtener todos los atributos y métodos de la clase principal, por lo que no solo simplifica el código, sino que también mejora la reutilización

7. en unittest, más "inteligente" que unittest

Beneficios:

1. Se pueden ejecutar casos de prueba específicos marcándolos

2. defina un dispositivo público, que se puede llamar en múltiples clases de prueba. No es necesario definirlo para cada clase de caso de prueba. La preparación y limpieza del entorno simplifican el código.

3. de acuerdo con ciertas reglas, mientras que unittest necesita agregar casos de prueba al conjunto de pruebas especificado

4. Usando la biblioteca pytest-html, puede generar sus propios informes html y archivos xml. que faciliten la integración y visualización con otras plataformas y faciliten el desarrollo secundario

8 Notas

1. Antes de automatizar, debes tener una cuenta independiente para evitar interferencias del entorno externo.

p>

2. La secuencia de páginas está completamente determinada por la lógica empresarial y los casos de prueba. Por lo tanto, al encapsular una página, no es necesario considerar quién la llamará, ni qué operación de página se utilizará después (o qué operación de función se utilizará después). Lo que se debe considerar es quién la utilizará sin importar qué. tipo de operación se realizó antes. Puede funcionar normalmente cuando se llama en cualquier paso (es por eso que algunos elementos de la página requieren operaciones de desplazamiento)

3. caso de uso, solo necesita considerar qué función hay en esta página (por ejemplo: para encapsular la función de saldo en la página de detalles, no necesita nombrar la función get_user_left_money_before_invest, pero asígnele el nombre get_user_left_money cuando solo considere su función)

4. Durante el proceso de selección, no especifique un nombre de etiqueta específico, selecciónelo al azar, porque las etiquetas en la página cambiarán. Por lo tanto, la selección de datos de prueba y el diseño de casos de uso deben seguir el principio de no depender del sistema tanto como sea posible, lo que también mejora la estabilidad del código

5. La operación es: el saldo disponible debe ser mayor que el monto de la inversión. Para garantizar esta condición, existen dos métodos:

1) Recargar suficiente dinero en segundo plano

2) Determinar. si el saldo actual del usuario es suficiente, recargar si no es suficiente, puede llamar a la interfaz de consulta para consultar el saldo del usuario, llamar a la interfaz de recarga para recargar; debido a que la operación API es muy rápida, esto también mejora la eficiencia de los casos de prueba

6. Garantizar la independencia de los casos de prueba: Cada caso de prueba debe volver a abrir el dispositivo navegador