Serie de artículos básicos "Enseñando de la mano" 2-Python+ Pruebas automatizadas de selenio: abrir y cerrar el navegador (detallado)

1. Introducción

Esta sección presenta cómo inicializar un controlador de objeto de instancia de webdriver y luego abrir y cerrar el navegador Firefox. Para abrir el navegador fiefox con selenium. Primero, debe descargar un complemento de controlador geckodriver.exe, descargar la dirección https://github.com/mozilla/geckodriver/releases, después de descargar el archivo exe, coloque este archivo en

En el directorio de instalación de Python, por ejemplo: C:\Python27\geckdriver.exe.

Como principiante, no se recomienda usar la herramienta Python IDE aquí, solo elija una poderosa herramienta de edición de bloc de notas, como Notepad ++. Cuando haya acumulado suficiente en el futuro, necesitará escribir más archivos o un diseño de marco simple más adelante. , presentaremos y usaremos la herramienta IDE Pycharm.

En el último artículo, después de instalar Selenium a toda prisa, no se lo presenté a mis amigos. Hoy, popularizaré Selenium entre mis amigos y estudiantes que no lo tienen claro.

2. Introducción básica a Selenium

Selenium` es una herramienta de prueba automatizada de código abierto. Se utiliza principalmente para la prueba automatizada de aplicaciones web, sin limitarse a esto, y admite la automatización de todas las tareas de administración basadas en la web.

2.1 Introducción del sitio web oficial de Selenium

Selenium es un conjunto de herramientas para automatizar navegadores web en muchas plataformas.

se ejecuta en muchos navegadores y sistemas operativos

puede ser controlado por muchos lenguajes de programación y marcos de prueba.

Sitio web oficial de Selenio: Selenio

Página de inicio de Selenium Github: https://github.com/SeleniumHQ/selenium

Selenium es un marco popular para probar interfaces de usuario (UI) de aplicaciones web. Es una poderosa herramienta para ejecutar pruebas funcionales de extremo a extremo. Puede escribir pruebas en varios lenguajes de programación y Selenium puede ejecutarlas en uno o más navegadores.

Selenium ha pasado por tres versiones: Selenium 1, Selenium 2 y Selenium 3. Selenium no es una herramienta simple, sino que consta de varias herramientas, cada una de las cuales tiene sus propias características y escenarios de aplicación.

Selenium nació en 2004 cuando Jason Huggins de ThoughtWorks estaba probando una aplicación interna. Siendo un tipo inteligente, se dio cuenta de que su tiempo debería aprovecharse mejor que probar manualmente cada cambio. Desarrolló una biblioteca Javascript que puede conducir páginas interactivas, lo que permite múltiples navegadores

Devuelve automáticamente los resultados de las pruebas. Esa biblioteca finalmente se convirtió en el núcleo de Selenium, que es la base de toda la funcionalidad de Selenium RC (control remoto) y Selenium IDE. Selenium RC es innovador porque ningún otro producto le permite controlar su navegador usando su idioma favorito. Este es el selenio 1.

Sin embargo, debido a que utiliza un motor de automatización basado en Javascript y los navegadores tienen muchas restricciones de seguridad en Javascript, algunas cosas son difíciles de lograr. Para empeorar las cosas, las aplicaciones web son cada vez más poderosas y utilizan todo tipo de funciones proporcionadas por los nuevos navegadores, todo lo cual hace que estas limitaciones sean dolorosas.

En 2006, un ingeniero de Google, Simon Stewart, comenzó el desarrollo basado en este proyecto, que se denominó WebDriver. En este punto, Google ya era un gran usuario de Selenium, pero los ingenieros de prueba tuvieron que sortear sus limitaciones para trabajar con la herramienta. Simon necesita un método nativo que funcione en todos los navegadores y sistemas operativos

Una herramienta de prueba que se comunica directamente con el navegador para resolver el problema del entorno sandbox de Javascript. El objetivo del proyecto WebDriver es resolver los puntos débiles de Selenium.

En 2008, los proyectos Selenium y WebDriver se fusionaron. Selenium tiene una gran comunidad y soporte comercial, pero WebDriver claramente representa la ola del futuro. La combinación de los dos proporciona un conjunto común de funciones para todos los usuarios y se basa en algunas de las mentes más brillantes en la automatización de pruebas. Esto es Selenio 2.

En 2016 nació Selenium 3. Se eliminó Selenium RC de Selenium 1, que ya no se usa, y se reescribieron oficialmente todos los controladores del navegador.

2.2 Conjunto de herramientas de selenio

2.2.1 IDE de selenio

Selenium IDE (Entorno de desarrollo integrado) es una herramienta de creación de prototipos para crear scripts de prueba. Es un complemento de Firefox, que realiza la función de grabación y reproducción de las operaciones simples del navegador y proporciona una interfaz sugerida para crear pruebas automatizadas. Selenium IDE tiene una función de grabación que puede registrar las acciones del usuario y exportarlas a un dispositivo reutilizable.

en el script para su posterior ejecución.

2.2.2 Selenio RC

Selenium RC es la herramienta principal de la familia Selenium. Selenium RC admite muchos lenguajes diferentes para escribir scripts de prueba automatizados y utiliza el servidor Selenium RC como un servidor proxy para acceder a la aplicación para lograr el propósito de la prueba.

Selenium RC utiliza bibliotecas de subclientes y Selenium Server.

La biblioteca Client Libraries se utiliza principalmente para escribir scripts de prueba para controlar la biblioteca de Selenium Server.

Selenium Server es responsable de controlar el comportamiento del navegador. En general, Selenium Server incluye principalmente 3 partes: Launcher, Http Proxy, Core.

2.2.3 Rejilla de selenio

Selenium Grid permite que la solución Selenium RC aumente la potencia de procesamiento para conjuntos de pruebas grandes o conjuntos de pruebas que necesitan ejecutarse en múltiples entornos. Selenium Grid le permite ejecutar sus pruebas en paralelo, es decir, diferentes pruebas pueden ejecutarse en diferentes máquinas remotas al mismo tiempo. Esto hace dos cosas, primero, si tienes un

Para un conjunto de pruebas grande, o un conjunto de pruebas que se ejecuta muy lentamente, puede usar Selenium Grid para dividir su conjunto de pruebas en varias partes y ejecutarlo en varias máquinas diferentes al mismo tiempo, lo que puede mejorar significativamente su rendimiento. Además, si tiene que ejecutar su conjunto de pruebas en varios entornos, puede obtener soporte para varias máquinas remotas, que se ejecutarán simultáneamente.

su conjunto de pruebas. En cada caso, Selenium Grid puede reducir significativamente el tiempo de procesamiento de su conjunto de pruebas a través del procesamiento paralelo.

2.2.4 Selenio WebDriver

WebDriver es la herramienta principal promovida por Selenium 2. De hecho, WebDriver es un sustituto de Selenium RC, porque Selenium necesita mantener la compatibilidad con versiones anteriores. En Selenium 2, Selenium RC no se ha abandonado por completo. Si usa Selenium para desarrollar un nuevo proyectos de prueba, entonces recomendamos enfáticamente usar

WebDriver de Selenium2 para la codificación. Además, en Selenium 3, se eliminó Selenium RC.

3. Instalación del controlador del controlador del navegador

3.1 Descarga del controlador del navegador

La descarga del controlador debería ser una parte complicada y debe prestar atención a la versión del navegador.

Ingrese a la interfaz de descarga desde el sitio web oficial de Selenium , desplácese hacia abajo en este momento, aunque los navegadores de terceros no están desarrollados oficialmente por Selenium, pero puede encontrar el enlace de descarga del controlador correspondiente al navegador compatible con Selenium en el sitio web oficial de Selenium. , porque estoy localmente La versión del navegador utilizada es relativamente nueva, por lo que la versión del controlador correspondiente también puede descargar la última versión.

Los siguientes son los enlaces de descarga para los tres navegadores más utilizados:

Controlador de Google Chrome: https://sites.google.com/a/chromium.org/chromedriver/downloads

Controlador Gecko de Mozilla: https://github.com/mozilla/geckodriver/releases

Controlador de Internet Explorer: http://selenium-release.storage.googleapis.com/3.13/IEDriverServer_x64_3.13.0.zip

Instalación del controlador del navegador 3.2

El archivo zip descargado se descomprime en el directorio de instalación de python, que se puede colocar en: C:\Users\Administrator\AppData\Local\Programs\Python\Python36, pero se recomienda colocarlo en el directorio de scripts: C:\ Usuarios\Administrador\AppData\Local\Programs\Python\Python36\Scripts

 Después de completar el trabajo anterior, podemos probar y usar selenio para controlar el navegador.

4. Navegador de prueba de manejo

4.1 Inicie python en CMD e importe el paquete webdriver desde selenium

desde el controlador web de importación de selenio

4.2 Navegador Drive Chrome

Abra el navegador Chrome, visite el sitio web de Google y luego cierre el navegador Chrome.

Código de referencia

# coding=utf-8

# 1.先设置编码,utf-8可支持中英文,如上,一般放在第一行

# 2.注释:包括记录创建时间,创建人,项目名称。
'''
Created on 2019-11-25
@author: 
Project: python+ selenium-打开和关闭浏览器
'''

# 3.导入模块
from selenium import webdriver
Ch_driver = webdriver.Chrome()
Ch_driver.get("https://www.google.com")
Ch_driver.quit() # 使用quit()关闭了chrome并结束了此次测试,如果是close()只是关闭chrome,后台仍在进行。

4.3 Unidad navegador Firefox

Abra el navegador Firefox, visite el sitio web de Google y luego cierre el navegador Firefox. Código de referencia

​

# coding=utf-8

# 1.先设置编码,utf-8可支持中英文,如上,一般放在第一行

# 2.注释:包括记录创建时间,创建人,项目名称。
'''
Created on 2019-11-25
@author: 
Project: python+ selenium-打开和关闭浏览器


'''

# 3.导入模块
from selenium import webdriver
Fi_driver = webdriver.Firefox()
Fi_driver.get("https://www.google.com")
Fi_driver.quit()
​

4.4 Navegador Drive IE

Abra el navegador IE, visite el sitio web de Google y luego cierre el navegador IE.

Código de referencia

# coding=utf-8

# 1.先设置编码,utf-8可支持中英文,如上,一般放在第一行

# 2.注释:包括记录创建时间,创建人,项目名称。
'''
Created on 2019-11-25
@author:
Project: python+ selenium-打开和关闭浏览器
'''

# 3.导入模块
from selenium import webdriver
Ie_driver = webdriver.Ie()
Ie_driver.get("https://www.google.com")
Ie_driver.quit()

Todo parece conducir el navegador normalmente y abrir la página web, luego cerrar y salir del navegador. De esta forma, hemos completado los preparativos para abrir y cerrar el navegador para las pruebas automáticas de selenio~

Nota: posibles errores

Excepción: Mensaje: Error inesperado al iniciar Internet Explorer. La configuración del modo protegido no es la misma para todas las zonas. Habilitar modo protegido debe establecerse en el mismo valor (habilitado o deshabilitado) para todas las zonas.

Solución: Opciones de Internet->Seguridad; configure la interfaz de seguridad del sitio de Internet, Intrant local y el sitio de confianza al mismo nivel, por ejemplo, todos están configurados; ejecute el código nuevamente para abrir Baidu con IE.

Resumen: en la actualidad, debido a la inestabilidad y la velocidad de IE, se recomienda utilizar Firefox o Google Chrome para probar y depurar scripts de automatización.

4.5 Resumen

El código anterior se puede escribir en un archivo y luego ejecutar. Los amigos cuidadosos o los zapatos de los niños sienten que la ventana es un poco pequeña cuando abre el navegador por primera vez, puede maximizar el navegador a través del código.

Abra un archivo en blanco con Notepad++, ingrese el siguiente código y guárdelo como first.py

# coding=utf-8

# 1.先设置编码,utf-8可支持中英文,如上,一般放在第一行

# 2.注释:包括记录创建时间,创建人,项目名称。
'''
Created on 2019-11-25
@author: 
Project: python+ selenium-打开和关闭浏览器
'''

# 3.导入模块

from selenium import webdriver # 导入webdriver包

driver = webdriver.Firefox() # 初始化一个火狐浏览器实例:driver

driver.maximize_window() # 最大化浏览器

driver.get("https://www.baidu.com") # 通过get()方法,打开一个url站点

driver.quit() #关闭并退出浏览器

Abra la ventana cmd, cd a la ruta donde se encuentra first.py, ingrese el comando en cmd: python first.py y presione Entrar, puede ver si Firefox está abierto, Baidu está abierto y Firefox está cerrado.

resumen

A través del código anterior y este artículo, básicamente entiendo cómo abrir y cerrar el navegador. Si desea abrir el navegador IE o Chrome, también debe descargar el archivo driver.exe correspondiente al navegador y colocarlo en el directorio de instalación de python.

Nota: puede encontrar algunos errores

1. Geckodriver.exe no se encuentra en el directorio de instalación de python y se informa este tipo de error.

2. Después de ejecutar python first.py, se encuentra el archivo, lo que indica que la ruta a la carpeta donde se encuentra first.py no se ha cambiado a través del comando cd.

Supongo que te gusta

Origin blog.csdn.net/nhb687096/article/details/131639779
Recomendado
Clasificación