Wednesday, June 12, 2024

Browser handling using JAVASCRIPT Executor

 JAVASCRIPT Executor:

--------------------

JavascriptExecutor  :  predefined Interface in Selenium

//  which has some methods and can be used to execute javascript code in browser 


some times, Selenium cannot click on button, checkboxes, send the data to textbox ...etc

at that time - we will go for JAVASCRIPT Executor

if we want to  click the hidden elements --> 

  to send the data in disabled element -->


driver.findElement().click(); --  not clicking button

driver.findElement().sendkeys("Ramu");  --  not entering value in textbox

-By using Javascript executor - 

we can click button, 

enter value in textbox, 

select the radio button,

select checkbox.. etc

methods :

-----------

1. executeScript(String script, WebEleRef)  

executeScript(String script); --> not avilable in API documnetation

  


2. executeAsyncScript(String script, Object... args)



Execute "Javascript" code in browser :

----------------------------------


Rt click Browser > Inspect >  Go to 'Console' tab  and click 'console' tab>   write Javascript code 


1 +2 Press enter


3-1 Press enter





-----------------------------------

Browser handling by "JavaScriptExecutor" :

--------------------------------------



Selenium code:

-------------

package JavaScriptExecutorBasics;


import org.openqa.selenium.JavascriptExecutor;

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.chrome.ChromeDriver;


public class BrowserHandlingByJSE {


public static void main(String[] args) {

System.setProperty("webdriver.chrome.driver", ".\\Drivers\\chromedriver.exe");

// . Represents current project folder name


// //open chrome browser

WebDriver  driver =  new ChromeDriver();


driver.get("file:///C:/brahma/Practise/qtp%20practise/web%20apps/ALL%20Web%20objects.html");


//*********************************

// Execute javascript code 

// Selenium --> driver.getTitle();

// get title of browser using Javascript -- getTitle()

//  document --refers browser or html document or page

// Js  code -->   document.title;

JavascriptExecutor  jse = (JavascriptExecutor) driver;

//

// // jse.executeScript("some js code");

Object otitle = jse.executeScript("document.title;");

//   here document refer browser or htmlpage

System.out.println("otitle="+otitle);// otitle=null


//   get/return some value from method -->  return  k/w

otitle = jse.executeScript("return document.title;");  

System.out.println("otitle="+ otitle);

//otitle=All webobjects MyTitle Sumanth


// Note:  dont forget to use return k/w in javascript when we want to get some o/p (or)  value


//  get url of browser using JSE ?  getCurrentURL()

// JS code --> document.URL;

Object ourl = jse.executeScript("return document.URL;");


System.out.println("ourl="+ourl);

//url=file:///C:/brahma/Practise/qtp%20practise/web%20apps/ALL%20Web%20objects.html


//  display "alert popup" window  on browser with given msg ''customer 123 created succefully'\

// JS code --> alert('customer 123 created succefully');

jse.executeScript("alert('customer 123 created succefully');");


}


}


git commands MCQ

 Here are some multiple-choice questions (MCQs) on Git commands relevant for Selenium: 1. Which Git command is used to clone a remote reposi...