Resumen senior de aves mayores, consejos prácticos de pruebas automatizadas de Selenium, no se desvíe...


prefacio

Pruebas automatizadas de Selenium4: https://www.bilibili.com/video/BV1MS4y1W79K/

La arquitectura del marco de prueba de automatización web comúnmente utilizada por las empresas ahora:
Python+selenium4+pytest+POM+allure+Jenkins;

Ahora, a diferencia del modelo de desarrollo en cascada anterior, los probadores de software ahora tienen la ventaja de usar herramientas de automatización para ejecutar conjuntos de casos de prueba, mientras que antes, los probadores se usaban para completar las pruebas a través de la ejecución de scripts de prueba.

Pero el propósito de las pruebas automatizadas no es deshacerse por completo de las pruebas manuales, sino minimizar la cantidad de pruebas que se ejecutan manualmente. Las pruebas automatizadas permiten realizar pruebas rápidas de sitios multilingües y también aumentan la velocidad de ejecución de las pruebas.

Las herramientas y aplicaciones de código abierto de Selenium Automation
son cada vez más importantes debido a su rentabilidad, eficiencia, repetibilidad, precisión y facilidad de uso. Selenium es una de las herramientas de código abierto que brinda todas las ventajas de las herramientas de código abierto en términos de pruebas de aplicaciones.

Selenium en pruebas de navegadores cruzados
Como sugiere el nombre, las pruebas de navegadores cruzados son un método utilizado para probar una aplicación web en diferentes navegadores web y dispositivos para garantizar que se ejecute sin problemas en cada dispositivo y navegador.

Consejos para las pruebas automatizadas de Selenium

1. Utilice el localizador correcto
La parte inferior del marco de Selenium es para interactuar con el navegador, lo que permite inspeccionar, ingresar y explorar múltiples objetos utilizando el Modelo de objetos de documento (DOM). Esto sucede a través de un conjunto de operaciones y utiliza varios localizadores, incluidos selectores de CSS, nombre, XPath, ID, nombre de etiqueta, texto de enlace y nombre de clase.

Por ejemplo, puede usar localizadores de clase e ID cuando no desea cambiar el código sin el conocimiento de los desarrolladores y probadores.
Por otro lado, el texto del enlace se puede usar para manejar dinámicamente situaciones cuando otros equipos están probando. Finalmente, XPath se puede utilizar para el posicionamiento.

2. Pruebas basadas en datos
Si desea utilizar la misma prueba y el mismo código para diferentes entradas, puede confiar en Selenium. Permitirá que los desarrolladores y los equipos de control de calidad realicen modificaciones, lo que significa que se puede usar para pruebas funcionales del sistema, así como para pruebas de compatibilidad del navegador.

Selenium también permite a los clientes beneficiarse de su marco. Los clientes pueden aprovechar un acelerador de pruebas patentado e iniciar la automatización de las pruebas. Esto reducirá el tiempo del ciclo de automatización. Hay una serie de bibliotecas que permiten a los clientes iniciar procesos automatizados.

3. No dependa de un controlador específico
Nunca dependa de una implementación de controlador específica. Comprenda que los controladores no son instantáneos en todos los navegadores. Es decir, puede que no haya necesariamente un controlador IE, un controlador FireFox, etc.

Por ejemplo, se recibe un RemoteDriver al realizar pruebas de integración durante una compilación continua de Linux. Los marcos pequeños se pueden crear rápidamente en Selenium usando LabeledParameterized (JUnit tiene @RunWith y TestNG tiene @Parameters).

y ScreenShotWatchMan(JUnit @Rule, TestNG TestListenerAdapter). En otras palabras, es bueno usar anotaciones de parámetros para manejar múltiples tipos de navegador y estar listo para ejecutarse simultáneamente.

4. Orden de los selectores
El orden en que se seleccionan los selectores es importante porque los selectores (como XPath y CSS) se basan en la posición. Son más lentos en comparación con la identificación, el nombre y el texto del enlace. El nombre y la identificación son selectores de camino particularmente sencillos y directos. CSS suele ser una combinación de ID y nombre. Por el contrario, XPath debería ser la solución de último recurso.

Una solución robusta se ve así: XPath <CSS <Texto de enlaces <Nombre <ID. Eso significa comenzar con la ID y hacer que XPath sea el último selector. De las 3 tablas sin datos, XPath reconoce la segunda tabla como la más lenta y es posible que no devuelva la tabla correcta. Así que al final se eligieron XPaths, son frágiles. CSS siempre se combina con nombres e ID.

5. Utilice el patrón de diseño PageObjects
PageObject ha ganado popularidad como el mejor patrón de diseño en la automatización de pruebas. Mejora la capacidad de mantenimiento de las pruebas y reduce la duplicación de código. Además, es una clase orientada a objetos que actúa como una interfaz para la página de la aplicación bajo prueba. Para simplificar, PageObject es un patrón de diseño orientado a objetos y define una página web como una clase. Diferentes elementos en la página se convertirán en variables. La interacción del usuario se implementa utilizando métodos concretos.

página web = categoría,
varios elementos en la página = variables,
interacción del usuario = método;

Ventajas de PageObject
Es útil tener un marco sólido con ajustes menores en la interfaz de usuario. El código de prueba y el código de página están separados. Son confiables y fáciles de mantener. El guión es legible. El código es reutilizable. La duplicación se elimina casi por completo.

6. Abogue por esperar para evitar dormir
y use esperar en lugar de dormir. Obtenga información sobre las esperas explícitas e implícitas y la lógica Thread.sleep(). Entonces, ¿por qué esperar y no dormir?

esperar
explícito: esperar a que suceda algo sin continuar escribiendo código.
Implícito: indica a WebDriver que sondee el DOM hasta que termine de buscar un elemento. De forma predeterminada, el tiempo se establece en 0.

sleep
Thread.sleep() esperará el número de segundos especificado entre paréntesis, independientemente de si la página de trabajo está lista o no.

7. Cierre la página de inicio de Firebug
Al iniciar el controlador de Firefox, es posible que Firebug ya esté incluido. A veces esto puede hacer que las cosas no funcionen correctamente. Si le molesta iniciar su navegador con una nueva pestaña de firebug abierta al mismo tiempo, siga uno de los consejos que se proporcionan a continuación para cerrar la página de inicio de firebug.

Establezca False en el indicador showFirstRunPage, de la siguiente manera:

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("extensions.firebug.showFirstRunPage", false);

El siguiente es el diagrama de sistema de arquitectura de conocimiento de aprendizaje de ingeniero de prueba de software más completo en 2023 que compilé

1. De la entrada al dominio de la programación en Python

Por favor agregue una descripción de la imagen

2. Proyecto de automatización de interfaz de combate real.

Por favor agregue una descripción de la imagen

3. Combate real del proyecto de automatización web

Por favor agregue una descripción de la imagen

4. Combate real del proyecto de automatización de aplicaciones

Por favor agregue una descripción de la imagen

5. Hoja de vida de los fabricantes de primer nivel

Por favor agregue una descripción de la imagen

6. Probar y desarrollar el sistema DevOps

Por favor agregue una descripción de la imagen

7. Herramientas de prueba automatizadas de uso común

Por favor agregue una descripción de la imagen

Ocho, prueba de rendimiento JMeter

Por favor agregue una descripción de la imagen

9. Resumen (pequeña sorpresa al final)

Mientras tengas un sueño en tu corazón, no dejes de perseguirlo; mientras trabajes duro, no habrá dificultades que no puedas superar; mientras mantengas una creencia firme, podrás crea tu propia vida brillante.

Solo avanzando con valentía podemos marcar el comienzo de un mañana mejor en el camino de la vida. Cada paso es una oportunidad para perfeccionarte, no tengas miedo al fracaso, porque el éxito es el siguiente paso que sigues intentando. ¡Deja que la pasión impulse tus sueños, sigue trabajando duro y mira hacia un futuro brillante!

Cada día es una oportunidad, no la desperdicies. Permanece persistente y valiente incluso cuando encuentres dificultades. Cree en tu propio potencial y nunca renuncies a tu deseo de buscar una vida mejor. ¡Solo trabajando duro podemos realizar nuestros sueños!

Supongo que te gusta

Origin blog.csdn.net/m0_70102063/article/details/130769377
Recomendado
Clasificación