Cómo abrir una nueva pestaña en Selenium

Cómo abrir una nueva pestaña en Selenium

Con Selenium, se puede abrir una URL en una nueva pestaña. Para esto, puede aplicar los sendkeys y las teclas.Métodos de acorde. Se pueden proporcionar varias claves a la vez usando las teclas.función de acorde. También podemos iniciar las nuevas pestañas en el mismo navegador usando Selenium WebDriver y cambiar entre ellos. Este artículo discute sobre el nuevo proceso y funcionalidad de apertura de pestañas de Selenium WebDriver. Demostramos esta función con algunos ejemplos simples.

Cómo abrir una nueva pestaña en Selenium

Usando selenio, es posible automatizar las instrucciones del navegador. Es funcional para todos los programadores, funciona con todos los sistemas operativos líderes y tiene contenido creado en varios idiomas, incluidos Python, Java, C#y otros. El nuevo comando de ventana de Selenium 4 facilita que sus usuarios abran una nueva pestaña o ventana. La pestaña o ventana creada tiene el enfoque después de ejecutar el comando.

Comando para abrir una nueva pestaña en Selenium

El siguiente comando se puede usar para abrir una nueva pestaña en Selenium:

conductor.Obtener (URL);


También se puede escribir de la siguiente manera:

Cadena url = "url";
conductor.Obtener (URL);


Ahora, expliquemos algunos ejemplos que explican el proceso de abrir una nueva pestaña en Selenium.

Ejemplo 1:

En este primer ejemplo, utilizamos algunos métodos simples y básicos para que los desarrolladores sin experiencia y experimentado los ayuden en su codificación inicial.

Para ejecutar el código, primero debemos crear una clase llamada "NewTabExample".


Ahora, ejecutamos el siguiente código:

clase pública NewtabExample

Public static void main (String [] args)

Webdrivermanager.cromedriver ().configuración();
Webdriver mydriver = new ChromedRiver ();
mi conductor.administrar().tiempo de espera ().implícitamente wait (3o, tiempo de tiempo.SEGUNDOS);
mi conductor.Get ("http: // www.aturdir.com ");
Sistema.afuera.println (mydriver.getTitle ());
mi conductor.cambiar a().NewWindow (WindowType.PESTAÑA);


Ahora entendemos este código. Primero, lanzamos el "Bing.com "a través del conductor".Método Get ". Luego, agregamos una impresión de comando en el controlador ".gettitle "que te da el título de la página. Escribimos el conductor ".cambiar ”al método de la nueva ventana. En esta nueva ventana en particular, puede pasar una nueva pestaña o una nueva ventana que desea abrir. Escribimos el tipo de tipo de ventana. Entonces, escriba el nombre de la ventana. El tipo de ventana es un enum (que es que desea abrir una nueva pestaña o una nueva ventana). Aquí, abrimos una nueva pestaña, así que escribimos "pestaña". Después de ejecutar este código, abre una nueva pestaña en blanco. Ahora, lo ejecutemos y veamos el resultado.


Después de ejecutar el código anterior, obtenemos el resultado en dos ventanas: una es Bing.com y la otra pestaña está en blanco.

mi conductor.cambiar a().NewWindow (WindowType.PESTAÑA);


Después de abrir una nueva pestaña, muestra dónde está disponible exactamente el controlador. Por ejemplo, abrimos dos pestañas: pestaña número 1 y pestaña número 2. En la pestaña número 1, tenemos "Bing.com ". En la pestaña número 2, tenemos "Facebook.com ". Anteriormente, cuando lanzamos nuestro conductor donde lanzamos "Bing.com ”, el controlador está disponible en la primera pestaña. Pero en el momento en que escribimos el "conductor.gettitle ”, eso es bing. En el momento en que escribimos el "conductor.cambiar ”a una nueva ventana, el tipo de ventana es pestaña. Ahora, se abre la nueva ventana en blanco. El controlador cambia aquí, lo que significa que el controlador está disponible en la pestaña Open New. Entonces, el control del controlador está disponible aquí.

Después de eso, si escribimos el "controlador de impresión.gettitle ”nuevamente, el controlador está disponible en la ventana en blanco en la pestaña en blanco. No debería darte ningún título de nuevo. Cuando ejecute el código, encontrará una pestaña en blanco.

Ejemplo 2:

Ahora, primero creamos una nueva clase para realizar las secuencias de comandos llamada "NewWindowExample".


El primer paso para abrir el selenio es ingresar la configuración.SetProperty y el controlador Chrome. Luego, ingrese los paquetes para ambos.

Sistema.setProperty ('webdriver.cromo.Conductor ', ° C: \\ Usuarios \\ ABC \\ Descargas \\ Chromedriver_win32 \\ Chromedriver.exe");
Webdriver mydriver = new ChromedRiver ();
mi conductor.administrar().ventana().maximizar();


Para lograr nuestro objetivo, escriba el conductor de URL.Get () primero y pegue la URL específica en ella. Ahora, cuando ejecutamos el script, obtenemos la ventana específica en una nueva pestaña.

Si queremos lidiar con múltiples ventanas, cambiamos de una ventana a otra. Para ejecutar eso, escribimos un "controlador.Cambiar". Entonces, podemos ver que hay opciones que están abiertas en Selenium. Las opciones incluyen lo siguiente:

    • cambiar a.marco (int Framenumber)
    • cambiar a.Frame (Webelement BreadElement)
    • cambiar a.Frame (String FrameName)
    • cambiar a().DefaultContent ()

Examinamos todo este procedimiento a través de nuestra codificación.

public static void main (string [] args)
Sistema.setProperty ("WebDriver.cromo.Conductor "," C: \\ Users \\ ABC \\ Downloads \\ Chromedriver_win32 \\ ChromedRiver.exe");
Webdriver mydriver = new ChromedRiver ();
mi conductor.administrar().ventana().maximizar();
mi conductor.Get ("https: // www.eBay.com ”)


Cuando ejecutamos este código en Selenium, obtenemos la página de Amazon como salida en nuestra nueva pestaña.

mi conductor.cambiar a().NewWindow (WindowType.PESTAÑA);


Usando esta línea en particular (dada anteriormente), convencemos a Selenium para que abra una pestaña nueva cuando la ejecución está en su lugar.

Ahora necesitamos agregar otra URL. ¿Qué hace nuestro script después de ejecutar el código?? Primero, se abre la ventana de Amazon. Entonces, se abre la ventana de la fuerza de ventas.

mi conductor.cambiar a().NewWindow (WindowType.PESTAÑA);
mi conductor.Get ("https: // bing.com ”)


Ejemplo 3:

Ahora, en el tercer y último ejemplo de este artículo, creamos un nuevo nombre de clase y creamos una nueva ventana o pestaña. En este código, usamos WebDriver y especificamos una variable. Luego, utilizando un WebDriver, podemos crear un objeto usando el administrador web. Esto se abre como un controlador Chrome. Ahora necesitamos abrir la URL. Para eso, utilizamos el método Get que está presente en WebDriver. Necesitamos proporcionar la URL y abrirla. Entonces, damos esa URL específica y creemos una variable de cadena llamada URL y el controlador.encontrar elemento, por XPath Locator que encontramos. Esto retrasa el webelemento. Luego, ingrese el "Imprimir.afuera.imprimir.en "ya que nuestro objetivo es abrir esta URL en una nueva pestaña o una nueva ventana. Podemos lograrlo usando el "controlador.cambiar ”al método de ventana nueva que está presente en Selenium. Necesitamos proporcionar el tipo de ventana al "nuevo tipo de ventana" como lo que debería ser, ya sea una pestaña o una ventana. Pero el tipo de ventana no es más que un enum.

Public Enum WindowType
Ventana ("Ventana"),
Pestaña ("pestaña"),


Enum acepta una ventana o una pestaña. Necesitamos proporcionar eso a la "ventana.tipo.Método de pestaña ". Vea el resto del código en el siguiente:

mi conductor.Get ("https: // www.selenio.dev/");
conductor.administrar().ventana().maximizar();
Cadena urlname = controlador.findelement (por.xpath ("// table [@id = 'table1'/tbody/sistema.afuera.println (Ur1Name);
mi conductor.cambiar a().NewWindow (WindowType.PESTAÑA);
mi conductor.Get (Ur1Name);
Sistema.afuera.println (mydriver.getTitle ());


Esto se abre en una nueva pestaña y cambia a esa pestaña. Una vez que la pestaña está abierta, podemos abrir nuestra URL cada vez que usamos el controlador.conseguir. La URL, que es la cadena de esta manera, se abre en una nueva pestaña.

Conclusión

Proporcionamos una breve introducción al Selenium WebDriver y descubrimos cómo abrir una nueva pestaña en Selenium en detalle. Con la ayuda de algunos ejemplos, también aprendimos a abrir múltiples pestañas en el Selenium Wedriver y algunas de las funciones de Selenium.