Critici 12 metodi javascriptexecutor in selenio

In questo segmento del tutorial discuteremo in modo dettagliato javascriptexecutor in selenio e tutte le probabili operazioni potrebbero essere eseguite utilizzando javascriptexecutor in selenio in termini di WebAutomation. 

Cos'è javascriptexecutor nel selenio 

Nella libreria Selenium javascriptexecutor è un'interfaccia che viene implementata diverse classi come ChromeDriver, FirefoxDriver, RemoteWebDriver, EdgeDriver, EventFiringWebDriver, InternetExplorerDriver ecc. Per supportare diverse operazioni relative a Javascript verso i rispettivi driver del browser.

JavaScriptExecutor in selenio
Esecutore JavaScript in selenio

Tipi di Java Script in Selenium e suoi metodi: 

Sono disponibili due diversi tipi di metodi JavaScript: 

Differenza tra executeAsyncScript ed executeScript:

eseguiAsyncScript  : Questo tipo di esecutore di java script viene utilizzato per eseguire un codice JavaScript asincrono nel contesto del frame o della finestra attualmente selezionati.

executeScript: Questo tipo di scriptexecutor Java che fondamentalmente esegue codice JavaScript sincrono nel contesto del frame o della finestra attualmente selezionati. 

 

Operazione che potrebbe essere eseguita utilizzando l'esecutore javascript in selenio: 

Esistono varie operazioni Web cruciali che si ottengono eseguendo Javascript nel driver del browser per ottenere determinate operazioni come: 

Parliamo di tutte le operazioni sopra menzionate: 

Clic javascript selenio 

Possiamo eseguire operazioni di clic in Selenium con operazioni Javascript nell'approccio seguente: 

public void jsClick() { elemento WebElement = driver.findElement(By.xpath("Xpath_OF_Element")); JavascriptExecutor jscriptExecutor = driver (JavascriptExecutor); jscriptExecutor.executeScript("arguments[0].click();", element); }

Selenio javascript inserisci testo

Possiamo eseguire l'operazione sendkeys in Selenium con l'operazione Javascript nell'approccio seguente: 

public void jsSendKeys() { JavascriptExecutor jscriptExecutor = (JavascriptExecutor) driver; jscriptExecutor.executeScript("document.getElementById('id_of_the_element').value='ENTER_THE_TEXT_HERE';"); }

Casella di controllo javascript selenio 

Potremmo usare l'opzione controllato= true o false a seconda dei casi d'uso per eseguire le operazioni CheckBox con Javascript in Selenium.

public void jsCheckBoxOps() { JavascriptExecutor jscriptExecutor = driver (JavascriptExecutor); jscriptExecutor.executeScript("document.getElementById('id_of_the_element').checked=false;"); }

Generazione di avvisi javascript al selenio

Per generare l'avviso dobbiamo utilizzare "avviso ('ALERT_TEXT_TO_BE_SHOWN');"Durante l'esecuzione dell'operazione con Javascript.

public void jsAlertGeneration() { JavascriptExecutor jscriptExecutor= driver (JavascriptExecutor); jscriptExecutor.executeScript("alert('ALERT_TEXT_TO_BE_SHOWN');"); }

Pagina di aggiornamento javascript selenio

Per aggiornare una pagina web in Selenium con Javascript Executor possiamo usare history.go (0).

public void jsRefreshPage() { JavascriptExecutor jscriptExecutor= driver (JavascriptExecutor); jscriptExecutor.executeScript("history.go(0)"); }

JavaScript selenio per ottenere il testo interno della pagina web

Per recuperare l'intero testo interno possiamo usare documento.documentElement.innerText;

public String jsFetchInnerText() { JavascriptExecutor jscriptExecutor= (JavascriptExecutor) driver; return String.valueOf(jscriptExecutor.executeScript("return document.documentElement.innerText;")); }

Selenio javascript ottiene il titolo della pagina 

Per restituire il titolo di una pagina possiamo usare titolo del documento; insieme a Javascript Executor in Selenium.

public String jsWebPageTitle() { JavascriptExecutor jscriptExecutor= (JavascriptExecutor) driver; return String.valueOf(jscriptExecutor.executeScript("return document.title;")); }

JavaScript selenio per ottenere il dominio 

Per estrarre il nome di dominio che possiamo usare documento.dominio;

public String jsFetchDomain() { JavascriptExecutor jscriptExecutor= driver (JavascriptExecutor); return String.valueOf(jscriptExecutor.executeScript("return document.domain;")); }

JavaScript selenio per ottenere l'URL di una pagina web

 

Per recuperare l'URL utilizzando JavaScript Executor con Selenium potremmo usare documento.URL;

public String jsFetchURL() { JavascriptExecutor jscriptExecutor= driver (JavascriptExecutor); return String.valueOf(jscriptExecutor.executeScript("return document.URL;")); }

Selenio javascript Scorrimento di una pagina web 

Possiamo eseguire lo scorrimento in diversi modi utilizzando Javascript, due degli approcci sono mostrati di seguito nello snippet di codice come:

public void scrollIntoView(By locator) { try { JavascriptExecutor executor = driver (JavascriptExecutor); Elemento WebElement = driver.findElement(localizzatore); executor.executeScript("arguments[0].scrollIntoView(true);", elemento); BASE_LOGGER .info("l'operazione di scorrimentoIntoView è stata eseguita per il locator: " + String.valueOf(elemento)); } catch (Eccezione e) { Stringa exceptionData = e.getCause().getMessage(); BASE_LOGGER.error("Errore riscontrato ie : " +exceptionData + " durante l'esecuzione di scrollIntoView sull'elemento: " + locator); } }

Inoltre possiamo specificare il valore di scorrimento (quantità di scorrimento) come questo seguente approccio:

public void jsScroll() { JavascriptExecutor jscriptExecutor= driver (JavascriptExecutor); jscriptExecutor.executeScript("window.scrollBy(0,1000)"); }

JavaScript selenio per navigare in una pagina diversa

Possiamo navigare in una pagina web / schermata diversa fornendo direttamente la posizione dell'URL all'interno del javascriptexecutor in Selenium. 

public void pageNavigationWithJS() { JavascriptExecutor jscriptExecutor= driver (JavascriptExecutor); jscriptExecutor.executeScript("window.location = 'PageURL_To_Navigate'"); }

Selenio javascript Per trovare e fare clic su un elemento nascosto

Potremmo fare clic direttamente sull'elemento nascosto con il Javascript dal backend anche se l'elemento non è visibile, ecco lo snippet di codice per lo stesso:

public void clickOnHiddenElement() { JavascriptExecutor jscriptExecutor= driver (JavascriptExecutor); WebElement hiddenElement=driver.findElement(By.id("ID_OF_ELEMENT")); jscriptExecutor.executeScript("arguments[0].click();", hiddenElement); }

Conclusione:

Finora abbiamo discusso del Javascript e delle varie operazioni da eseguire utilizzando l'esecutore Javascript in Selenium, sei incoraggiato a passare attraverso il tutorial completo sul selenio per avere una migliore presa su tutti i diversi aspetti dello stesso. Nella prossima serie di Segments of Tutorial discuteremo di più sul Selenio Automazione Framework e altre tecnologie più recenti per lavorare con Selenium e risolvi qualsiasi intervista avanzata in Selenium che puoi passare qui.

Lascia un tuo commento