Kritische 12 Javascriptexecutor-Methoden in Selen

In diesem Abschnitt des Tutorials werden wir Javascriptexecutor in Selen detailliert behandeln und alle wahrscheinlichen Operationen könnten mit Javascriptexecutor in Selen in Bezug auf WebAutomation ausgeführt werden. 

Was ist Javascriptexecutor in Selen? 

In der Selenium Library ist javascriptexecutor eine Schnittstelle, die verschiedene Klassen wie ChromeDriver, FirefoxDriver, RemoteWebDriver, EdgeDriver, EventFiringWebDriver, InternetExplorerDriver usw. implementiert, um verschiedene Javascript-bezogene Vorgänge für die jeweiligen Browser-Treiber zu unterstützen.

JavaScriptExecutor in Selen
JavaScript Executor in Selen

Arten von Java-Skripten in Selen und ihre Methoden: 

Es stehen zwei verschiedene Arten von JavaScript-Methoden zur Verfügung: 

Unterschied zwischen executeAsyncScript und executeScript:

ausführenAsyncScript  : Diese Art von Java Script Executor wird verwendet, um einen asynchronen JavaScript-Code im Kontext des aktuell ausgewählten Frames oder Fensters auszuführen.

executeScript: Dieser Typ des Java-Scriptexecutors, der im Wesentlichen synchronen JavaScript-Code im Kontext des aktuell ausgewählten Frames oder Fensters ausführt. 

 

Operation Dies kann mit Javascript Executor in Selen durchgeführt werden: 

Es gibt verschiedene wichtige Weboperationen, die beim Ausführen von Javascript im Browsertreiber erreicht werden, um bestimmte Operationen auszuführen, wie z. 

Besprechen wir alle oben genannten Vorgänge: 

Selenium Javascript klicken 

Wir können die Klickoperation in Selen mit der Javascript-Operation auf folgende Weise ausführen: 

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

Selen Javascript Text eingeben

Wir können die Sendkeys-Operation in Selen mit der Javascript-Operation wie folgt durchführen: 

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

Kontrollkästchen für Selen-Javascript aktivieren 

Wir könnten Option verwenden geprüft= wahr oder falsch, abhängig von den Anwendungsfällen, in denen die CheckBox-Operationen mit Javascript in Selen ausgeführt werden.

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

Selenium Javascript Alarmgenerierung

Um die Warnung zu generieren, müssen wir „alert ('ALERT_TEXT_TO_BE_SHOWN');”Während der Operation mit Javascript.

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

Aktualisierungsseite für Selen-Javascript

Um eine Webseite in Selenium mit Javascript Executor zu aktualisieren, können wir verwenden history.go (0).

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

Selenium-Javascript, um den inneren Text von WebPage zu erhalten

Um den gesamten inneren Text abzurufen, können wir verwenden document.documentElement.innerText;

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

Selenium Javascript erhalten Titel der Seite 

Um den Titel einer Seite zurückzugeben, können wir verwenden Dokumenttitel; zusammen mit Javascript Executor in Selen.

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

Selen Javascript, um die Domain zu erhalten 

Um den Domainnamen abzurufen, können wir verwenden dokument.domäne;

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

Selen Javascript, um die URL einer Webseite zu erhalten

 

Um die URL mit JavaScript Executor mit Selenium abzurufen, könnten wir verwenden Dokument.URL;

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

Selen Javascript Scrollen einer Webseite 

Wir können mit Javascript auf verschiedene Arten scrollen. Zwei der folgenden Ansätze sind im Code-Snippet aufgeführt, z. B.:

public void scrollIntoView (By locator) { try { JavascriptExecutor executor = (JavascriptExecutor)-Treiber; WebElement-Element = driver.findElement(Locator); executor.executeScript("arguments[0].scrollIntoView(true);", element); BASE_LOGGER .info("ScrollIntoView-Operation wurde für den Locator durchgeführt: " + String.valueOf(element)); } catch (Ausnahme e) { String exceptionData = e.getCause().getMessage(); BASE_LOGGER.error("Fehler aufgetreten, dh: " + exceptionData + " beim Durchführen von scrollIntoView für das Element: " + locator); } }

Außerdem können wir den Bildlaufwert (Anzahl der Bildlauf) wie folgt festlegen:

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

Selenium Javascript, um zu einer anderen Seite zu navigieren

Wir können zu einer anderen Webseite / einem anderen Bildschirm navigieren, indem wir den URL-Speicherort direkt im javascriptexecutor in Selen angeben. 

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

Selen-Javascript Zum Suchen und Klicken auf ein verstecktes Element

Wir könnten direkt mit dem Javascript aus dem Backend auf das versteckte Element klicken, obwohl das Element nicht sichtbar ist. Hier ist das Code-Snippet dafür:

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

Fazit:

Wir haben bisher über das Javascript und verschiedene Operationen gesprochen, die mit dem Javascript-Executor in Selen ausgeführt werden sollen. Wir empfehlen Ihnen, das zu durchlaufen vollständiges Selenium-Tutorial um die verschiedenen Aspekte desselben besser in den Griff zu bekommen. In den kommenden Segmenten der Tutorial-Reihe werden wir mehr darüber diskutieren Selenautomatisierung Framework und andere neueste Technologien für die Arbeit mit Selen und zu Knacken Sie jedes fortgeschrittene Interview in Selenium, das Sie hier durchgehen können.

Hinterlasse einen Kommentar